Python裡的print用法總結

2021-06-27 16:33:52 字數 2722 閱讀 2695

在python中接受來自使用者的輸入很簡單,可以使用input,它類似於c語言裡的 scanf 或者c++中的 cin。

>>> x = input("please input x:")

please input x:10

>>> print(x)

10

用於輸出的print,其一般用法是比較 straightforward 的,就像上面的print(x)那樣,對於乙個已知的物件(無論什麼型別),python都能自行輸出。

乙個比較tricky的問題是,如何做「格式化」輸出。方法跟c語言差不多,也是使用%,但是變數之前還要再寫乙個%,這個跟c語言裡面略有不同(c裡面還需要乙個逗號)。來看一些例子:

>>> a = 10

>>> print("the value is %d" %a)

the value is 10

>>> print("the value is %d" %10)

the value is 10

>>> s = 'hello'

>>> x = len(s)

>>> print("the length of %s is %d" % (s,x))

the length of hello is 5

關於格式化輸出的一些技巧總結:

1. %字元:標記轉換說明符的開始

2. 轉換標誌:

3. 最小字段寬度:轉換後的字串至少應該具有該值指定的寬度。如果是*,則寬度會從值元組中讀出。

4. 點(.)後跟精度值:如果轉換的是實數,精度值就表示出現在小數點後的位數。如果轉換的是字串,那麼該數字就表示最大字段寬度。如果是*,那麼精度將從元組中讀出

5. 字串格式化轉換型別

轉換型別          含義

d,i                 帶符號的十進位制整數

o                   不帶符號的八進位制

u                   不帶符號的十進位制

x                    不帶符號的十六進製制(小寫)

x                   不帶符號的十六進製制(大寫)

e                   科學計數法表示的浮點數(小寫)

e                   科學計數法表示的浮點數(大寫)

f,f                 十進位制浮點數

g                   如果指數大於-4或者小於精度值則和e相同,其他情況和f相同

g                  如果指數大於-4或者小於精度值則和e相同,其他情況和f相同

c                  單字元(接受整數或者單字元字串)

r                    字串(使用repr轉換任意python物件)

s                   字串(使用str轉換任意python物件)

來看一些例子:

>>> pi = 3.141592653

>>> print('%10.3f' % pi) #欄位寬10,精度3

3.142

>>> print("pi = %.*f" % (3,pi)) #用*從後面的元組中讀取字段寬度或精度

pi = 3.142

>>> print('%010.3f' % pi) #用0填充空白

000003.142

>>> num = -0.15

>>> print('%+f' % num) #顯示正負號

-0.150000

以及

print ("name:%-10s age:%-8d height:%-8.2f"%("tom", 18, 1.83)) #指定佔位符寬度(左對齊)

name:tom age:18 height:1.83

print ("name:%10s age:%8d height:%8.2f"%("tom", 18, 1.83)) #指定佔位符寬度

name: tom age: 18 height: 1.83

print ("name:%-10s age:%08d height:%08.2f"%("tom", 18, 1.83)) #指定佔位符(用0當佔位符)

name:tom age:00000018 height:00001.83

print ("name:%-10s age:% 8d height:%-8.2f"%("tom", 18, 1.83)) #空白字元表示正數之前保留空格

name:tom age: 18 height:1.83

最後,print總是預設換行的,例如:

>>> for x in range(0,5):

print(x)

0123

4

如果想要不換行,對於 python 3.x 來說,你需要把語句寫成 print(x,end = '' )

>>> for x in range(0,5):

print (x,end = '')

01234

* 本文中之例子皆基於python 3.6完成。筆者所使用的ide是spyder 3.1.4。

(本文完)

Python3 5裡print 的用法

函式原型 print objects,sep end n file sys.stdout,flush false 該函式將會像str 函式一樣,把所有非關鍵字宣告轉化為字串,然後寫入輸出流。sep和end的賦值必須是字串,而且可以省略,即使用預設值。如果沒有把類賦予print 那麼它就輸出換行符號。...

python中print()函式裡的

一些入門書籍沒有介紹print 函式這一格式化輸出方法,有的同學看到這裡會有疑惑。說明 字元 標記轉換說明符 str the length of s is d runoob len runoob print str the length of runoob is 6或者 x hex 十六進製制 d ...

python學習2 print 的用法

def print self,args,sep end n file none 1.sep 元素間的插入值,預設為空格 2.end 元素結尾插入值,預設為換行符 n 3.file 元素輸出位置 預設為當前 sys.stdout.print 函式是預設換行的即 end n 重寫 end 引數即可改變其...