輸出python3.x : print() 函數 >>> print('hello, world')使用print()函數或語句可以接受多個字元串,用逗號“,”隔開,就可以連成一串輸出。print()函數或語句會依次列印每個字元串,遇到逗號“,”會輸出一個空格>>> print('hello', ' ...
輸出
python3.x : print() 函數
>>> print('hello, world')
使用print()函數或語句可以接受多個字元串,用逗號“,”隔開,就可以連成一串輸出。print()函數或語句會依次列印每個字元串,遇到逗號“,”會輸出一個空格
>>> print('hello', 'world','!')
hello, world !
>>> print('100 + 200 =', 100 + 200)
100 + 200 = 300
python2.x:print 語句
>>> print 'hello, world'
輸入
python3.x : input() 、eval() 函數
python2.x : raw_input()、input() 函數
對應關係
python3.x: input() => python2: raw_input()
python3.x: eval() => python2: input()
註意:python2.x中的input()函數和 python3.x的eval()函數,輸入的是什麼類型就是什麼類型,即根據用戶輸入變換相應的類型。如果要輸入字元和字元串的時候必須要用引號包起來,否則當成變數。
>>> name='test'
>>> eval('name') 註意引號
'test'
# cat test.py
#!/usr/bin/env python
name = input('please enter your name: ') --將輸入結果賦值給變數
print('hello,', name)
#python test.py
please enter your name: Michael
hello, Michael
python3.x
input()和print()是在命令行下麵最基本的輸入和輸出
python解釋器提供了3種標準文件對象,分別為標準輸入、標準輸出和標準錯誤
在sys模塊中的提供形式:sys.stdin、sys.stdout、sys.stderr
print 是把一個或多個對象轉換為其文本表達形式,然後給標準輸出或另一個類似文件的流(在linux中,任何東西都表示成一個文件)
print 接受一個逗號分隔的對象列表,併為行尾自動添加一個換行符,如果不需要,則在最後一個元素後添加逗號(在互動式命令行體現不出來)
註意:input()不管用戶輸入什麼類型的都會轉變成字元型,input()返回的數據類型是str, str不能直接和整數比較。
格式化輸出
如何輸出格式化的字元串。我們經常會輸出類似'親愛的xxx你好!你xx月的話費是xx,餘額是xx'之類的字元串,而xxx的內容都是根據變數變化的,所以,需要一種簡便的格式化字元串的方式。
在Python中,採用的格式化方式和C語言是一致的,用%實現。%運算符就是用來格式化字元串的。在字元串內部,%s表示用字元串替換,%d表示用整數替換,有幾個%?占位符,後面就跟幾個變數或者值,順序要對應好。如果只有一個%?,括弧可以省略,即 "string %format1 %format2 ..." % (variable1,variable2,...)
常見的占位符有:
格式 輸出格式
%% 百分號標記
%c 字元及其ASCII碼 character
%s 字元串 string
%d 有符號整數(十進位) decimal
%u 無符號整數(十進位)
%o 無符號整數(八進位)
%x 無符號整數(十六進位)
%X 無符號整數(十六進位大寫字元)
%f 浮點數字(用小數點符號) float
%e 浮點數字(科學計數法)
%E 浮點數字(科學計數法,用E代替e)
%g 浮點數字(根據值的大小採用%e或%f)
%G 浮點數字(類似於%g)
%p 指針(用十六進位列印值的記憶體地址)
%n 存儲輸出字元的數量放進參數列表的下一個變數中
%r 同repr()生成的字元串
%[(name)][flags][width].[precision]typecode
(name) 字典鍵名
flags +,-,' '或0
+ 表示右對齊
- 表示左對齊
' ' 表示在正數的左側填充一個空格,從而與負數對齊
0 表示使用0填充
width 表示顯示寬度
precision 表示小數點後精度
舉例:
>>> print('growth rate: %d %%' %7)
growth rate: 7 %
>>> print ("the num is %f" % 3.14)
the num is 3.140000
>>> print ("the num is %d" % 3.14)
the num is 3
>>> num2 = 4.13
>>> print ("the nums are %f and %d" %(3.14,num2))
the nums are 3.140000 and 4
>>> d1 = {'a':1,'b':2}
>>> print ('%(a)-10d %(b)0.3f' %d1)
1 2.000
小明的成績從去年的72分提升到了今年的85分,請計算小明成績提升的百分點,並用字元串格式化顯示出'xx.x%',只保留小數點後1位 :
#!/usr/bin/env python
s1=72
s2=85
r=(s2-s1)/s1*100
print("小明成績成績提高了%.1f%%" % r)