2. Python中的基本輸入、輸出、格式化

本文利用的是Python 3.x版本,建議學習3.x版本python

Python中的基本輸入、輸出、格式化

1. 輸入

使用input([prompt])讀取一行,將其轉換爲string類型並返回,input的參數無關緊要,若是有參數的話,會在控制檯(能夠這樣理解)輸出參數的內容,不換行。一般狀況下咱們在控制檯輸入一些數據,而後敲擊回車,就完成了本次輸入。如下是例子。安全

name = input("Enter your name: ")
print(name)

這裏要注意的是,input返回的是string類型,若是想輸入數字,還須要進行類型轉換,例如函數

num = int(input("Enter a number: "))
print(num*2)

其實以上這種轉換並不安全,由於若是user輸入字符串的話,無法轉爲int類型,這樣程序就會出錯,異常終止。因此一種比較簡單的方法是,先對輸出進行判斷,而後再轉換,由於尚未說到判斷語句,因此這個判斷以後再說。學習

2. 輸出

通常在控制檯中咱們用print進行輸出,由於比較簡單,因此以前也一直在使用。print的原型以下3d

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)code

看起來很複雜,可是這個參數都是有默認參數的,咱們能夠先簡單使用前三個參數,後面的默認便可,這樣的話,目前而言,咱們的print就變成了orm

print(*objects, sep=' ', end='\n')對象

第一個參數是咱們要在控制檯輸出的數據,能夠是多個,用,逗號隔開,pyprint很強大,能夠輸出不少種數據類型,只要你覺的能夠輸出的,print均可以輸出,你以爲不能輸出的,試一試也可能輸出。
例如blog

print("xx")
print(1)
print(True)
print(None)

sep用來將多個數據隔開,默認是空格,end加在輸出的末尾,默認是換行符字符串

print(1,2,3,sep='@@',end='<>\n')
#用@@分隔數據,結尾加上<>並換行

3. 格式化輸出,佔位符

如何格式化輸出字符串呢,例如你好XX,你的額度是xx,其中xx的變量,咱們沒法預知,這個時候就須要格式化輸出,和C語言同樣,咱們可使用佔位符%?,其中?表明不一樣的字符,例如%s表明字符串,%d表明十進制整數,%f表明浮點數,例如

name = "Potato"
b = 100
print("你好%s,你的額度是%d" % (name,b) )
#name將替換%s的位置,b將替換%d的位置,字符串後的%用來講明是哪些變量要替換前面的佔位符,當只有一個變量的時候,能夠省略括號

佔位符還能夠控制輸出的格式,例如保留幾位小數,填充前導0等,如下是例子

print("小數: %.2f" % 3.14159)# %.2f表明保留兩位小數
print("小數: %.2f" % 4.5)# %.2f保留兩位小數,不夠的位用0補充
print("佔位: %3d" % 5)# %3d表明這個數的寬度爲3,不夠的話用空格在前面補,若是數的寬度大於3,則正常輸出
print("前導0: %05d" % 2)# %05d表明這個數的寬度爲5,不夠的話用0在前面補,若是數的寬度大於5,則正常輸出

若是不知道數據類型的話,用%s即轉爲字符串進行輸出會比較穩妥,還有許多種佔位符的格式,具體使用時能夠搜索,通常經常使用的就是以上那些。

4. 格式化輸出,format

能夠利用string對象的format方法,進行格式化,如下是例子

print("你好{0},你的餘額是{1:.2f}".format("Potato",3.1))
#{0}表明佔位符和format裏的參數對應,{1:.2f},冒號後是格式控制,表明保留兩位小數

這種方式使用起來可能不是很方便。或者還可使用py內置的format函數,例如

print(format(3.1415,".2f"))
#結果是3.14

若是以爲不錯,能夠分享~能夠關注公衆號~

相關文章
相關標籤/搜索