python知识:string.format()函数详解
python2.6 新增了一種格式化字符串的函數 str.format(),它增強了字符串格式化的功能。
基本語法是通過 {} 和 : 來代替以前的 % 。
一、處理字符串?
1 不設置指定位置,按默認順序
"{} {}".format("hello", "world")
2 設定位置次序
ss = "{0} {1} {2}".format("hello", "world","goodday!")? ?# 設置指定位置 'hello world goodday'
rr= "{2} {1} {0}".format("hello", "world","goodday!")? ? ?# 設置指定位置 'goodday world hello'
print(ss,rr)?
3 設定參數
- 參數列出
s1 = "網站名:{name}, 地址 {url}".format(name="菜鳥教程", url="www.runoob.com")
print(s1)
輸出: 【 網站名:菜鳥教程, 地址 www.runoob.com 】
- 通過字典設置參數
site = {"name": "菜鳥教程", "url": "www.runoob.com"}
s1 = "網站名:{name}, 地址 {url}".format( **site )?
print(s1)
輸出: 【 網站名:菜鳥教程, 地址 www.runoob.com 】
- 通過列表索引設置參數
my_list = ['菜鳥教程', 'www.runoob.com']
s1 = "網站名:{0[0]}, 地址 {0[1]}".format(my_list)?
- 通過對象傳遞
class AssignValue(object):
????????def __init__(self, value):
????????????????self.value = value
my_value = AssignValue(6)
print('value 為: {0.value}'.format(my_value))? ? # "0" 是可選的,這個很重要
2 處理數字
| 3.1415926 | {:.2f} | 3.14 | 保留小數點后兩位 |
| 3.1415926 | {:+.2f} | +3.14 | 帶符號保留小數點后兩位 |
| -1 | {:+.2f} | -1.00 | 帶符號保留小數點后兩位 |
| 2.71828 | {:.0f} | 3 | 不帶小數 |
| 5 | {:0>2d} | 05 | 數字補零 (填充左邊, 寬度為2) |
| 5 | {:x<4d} | 5xxx | 數字補x (填充右邊, 寬度為4) |
| 10 | {:x<4d} | 10xx | 數字補x (填充右邊, 寬度為4) |
| 1000000 | {:,} | 1,000,000 | 以逗號分隔的數字格式 |
| 0.25 | {:.2%} | 25.00% | 百分比格式 |
| 1000000000 | {:.2e} | 1.00e+09 | 指數記法 |
| 13 | {:>10d} | ?13 | 右對齊 (默認, 寬度為10) |
| 13 | {:<10d} | 13 | 左對齊 (寬度為10) |
| 13 | {:^10d} | 13 | 中間對齊 (寬度為10) |
| 11 | '{:b}'.format(11) | 1011 | 進制 |
^,?<,?>?分別是居中、左對齊、右對齊,后面帶寬度,?:?號后面帶填充的字符,只能是一個字符,不指定則默認是用空格填充。
+?表示在正數前顯示?+,負數前顯示?-;??(空格)表示在正數前加空格
b、d、o、x 分別是二進制、十進制、八進制、十六進制。
舉個例子:
'鼠標位置{0:3d},{1:3d} '.format(x, y) # 給出x,y的長度為4總結
以上是生活随笔為你收集整理的python知识:string.format()函数详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: QT5界面操作2:如何用状态栏显示鼠标坐
- 下一篇: 机器视觉-特征点检测:【2】Harrs角