python format()方法
在Python3中,%操作符通過一個更強的格式化方法format()進行了增強。
1》欄位名字可以為整數,表示引數的位置,如下:
>>> print('My name is:{0},and my age is:{1}'.format('song',18))
My name is:song,and my age is:18
2》欄位名字也可以是引數的名字,如下:
>>>
print('My name is:{name},and my age is:{age}'.format(name='song',age=18))
My name is:song,and my age is:18
3》可以使用欄位的組合來讀取屬性或者字典中key對應的值,如下:
>>>
import sys
>>> sys.platform
'win32'
>>> sys.version
'3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:54:25) [MSC v.1900 64 bit (AMD64)]'
>>>
print('platform:{0.platform}\nversion:{0.version}'.format(sys))
platform:win32
version:3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:54:25) [MSC v.1900 64 bit (AMD64)]
>>>
d={'name':'song','age':18}
>>> d
{'name': 'song', 'age': 18}
#字典 d 中的鍵為字串'name'和'age',但在下面的print()語句中,需要去掉引號,如下:
>>> print('My name is:{0[name]},and my age is:{0[age]}'.format(d))
My
name is:song,and my age is:18
>>>
print('My name is:{0[1]}'.format(['zhang','song','liu'])) #針對列表的操作
My name is:song
4》格式化指示符可以包含一個展示型別來控制格式,如下:
>>> print('{0:e}'.format(3.1415)) #用科學計數法列印數字,預設保留6位小數
3.141500e+00
>>>
print('{0:.3e}'.format(3.1415)) #用科學計數法列印數字,指定保留3位小數
3.142e+00
>>>
print('{0:%}'.format(0.12)) #列印百分數,預設保留6位小數
12.000000%
>>>
print('{0:.2%}'.format(0.34)) #列印百分數,指定保留2位小數
34.00%
>>>
print('{0:b}'.format(18)) #將數字以2為基數進行輸出(二進位制)
10010
>>> print('{0:d}'.format(18)) #將數字以10為基數進行輸出(十進位制整數)
18
>>> print('{0:o}'.format(18)) #將數字以8為基數進行輸出(八進位制)
22
>>> print('{0:x}'.format(180)) #將數字以16為基數進行輸出,9以上的位數用小寫字母(十六進位制)
b4
>>>
print('{0:X}'.format(180)) #將數字以16為基數進行輸出,9以上的位數用大寫字母(十六進位制)
B4
5》有一個內建的format()方法可以用來格式化一個值,它會呼叫型別的__format__()方法,並將格式化指示符作為引數傳進去,如下:
>>>
format(3.1415926,'f') #預設保留6位小數
'3.141593'
>>> format(3.1415926,'.3f') #指定保留3位小數
'3.142'
以上便是,python3中format()方法的簡單使用,我們就介紹到這裡,大家可以查閱書籍進行更加深入的學習。。。