400-650-7353
您所在的位置:首頁 > IT干貨資料 > python > 【Python基礎知識】使用format()方法格式化字符串

【Python基礎知識】使用format()方法格式化字符串

  • 發布: python培訓
  • 來源:python干貨資料
  • 2020-08-14 16:24:33
  • 閱讀()
  • 分享
  • 手機端入口

Python 3引入了一種新的方式來格式化字符串,這種方式也反向移植到了Python 2.7中。“新式”格式化字符串廢除了%操作符這種特殊語法,使得格式化字符串更常規。通過在字符串對象上調用format()方法來格式化字符串。

format()方法要求字符串中待格式化的字符串用花括號“{}”占位:

  1. >>> score = 59 
  2. >>> name = 'Ming' 
  3. >>> # format()方法將score和name按順序格式化,即score和name按順序“填充” 
  4. >>> '{} {}'.format(score, name) 
  5. '59 Ming' 

1、格式化數字

格式化數字時,如果不使用任何說明符,那么“{}”僅起到占位的作用,不會改變原本的數字:

  1. >>> '我的幸運數字是{}'.format(7
  2. '我的幸運數字是7' 
  3. >>> '圓周率約等于{}'.format(3.14
  4. '圓周率約等于3.14' 

“:d”說明符用于將數字轉換成整數,如果提供的數字無法轉換成整數(如浮點數),Python解釋器將會報錯:

  1. >>> '{:d}'.format(7
  2. '7' 
  3. >>> '{:d}'.format(3.14
  4. Traceback (most recent call last): 
  5.   File "<stdin>", line 1in <module> 
  6. ValueError: Unknown format code 'd' for object of type 'float' 

“:f”說明符用于將數字轉換成浮點數,“新式”格式化字符串的方式也可以指定浮點數位數:

  1. >>> '{:f}'.format(3.14)   # 默認位數為小數點后6位 
  2. '3.140000' 
  3. >>> '{:.2f}'.format(3)   # 指定為小數點后2位 
  4. '3.00' 

當小數位數超出指定的位數時,會以四舍五入的形式舍棄后面的小數:

  1. >>> '{:.5f}'.format(3.1415926)   # 保留小數點后5位 
  2. '3.14159' 
  3. >>> '{:f}'.format(3.1415926)   # 默認保留小數點后6位 
  4. '3.141593' 

可以使用正號“+”來顯式指出數字為正,當數字為負數時,不需要使用多余的符號:

  1. >>> '{:+d}'.format(7
  2. '+7' 
  3. >>> '{:d}'.format(-7
  4. '-7' 

使用“:,”進行格式化,會將數字的每三位加一個逗號:

  1. >>> '{:,}'.format(123456789
  2. '123,456,789' 

2、格式化字符串

當需要格式化多個字符串時,format()方法的參數需要用逗號隔開:

  1. >>> '{}  {}  {}'.format(7'Ming'3.14
  2. '7  Ming  3.14' 

它們本質上是元組數據類型,并且元組中包含的每個項都可以通過其索引號(索引號從0開始)進行調用。可以將這些索引號傳遞到用作原始字符串中占位符的“{}”中:

  1. >>> '{0} {1} {2}'.format(7'Ming'3.14)   # 0 1 2 為默認順序 
  2. '7 Ming 3.14' 
  3. >>> '{2} {1} {0}'.format(7'Ming'3.14)   # 將順序調整為2 1 0 
  4. '3.14 Ming 7' 
  5. >>> '{2} {0} {1}'.format(7'Ming'3.14)   # 將順序調整為2 0 1 
  6. '3.14 7 Ming' 

3、使用字符串名稱

可以在占位符的“{}”中填入待格式化的字符串名稱,這樣可以使原始字符串看起來更加清晰:

  1. >>> '{name}的分數是{score}'.format(name='Ming', score=88
  2. 'Ming的分數是88' 

4、填充和對齊

可以通過附加參數增加字符串長度來填充字符串,或者在字符串周圍創造“空間”。當需要可視化地組織大量數據時,這會很有用,下面是一些例子:

  1. >>> '{:10}'.format('Ming')   # 10代表字符串一共占用10個字符 
  2. 'Ming      ' 
  3. >>> '{:>10}'.format('Ming')   # >使字符串右對齊,一共占用10個字符 
  4. '      Ming' 
  5. >>> '{:^10}'.format('Ming')   # ^使字符串居中,一共占用10個字符 
  6. '   Ming   ' 

除了用空格填充字符串外,還可以用其他字符來填充字符串:

  1. >>>  
  2. >>> '{:_<10}'.format('Ming')   # 使用_填充字符串,<使字符串左對齊 
  3. 'Ming______' 
  4. >>> '{:s<10}'.format('Ming')   # 使用s填充字符串,<使字符串左對齊 
  5. 'Mingssssss' 
  6. >>> '{:_>10}'.format('Ming')   # 使用_填充字符串,>使字符串右對齊 
  7. '______Ming' 
  8. >>> '{:_^10}'.format('Ming')   # 使用_填充字符串,^使字符串居中 
  9. '___Ming___' 

在格式化數字時,也可以填充字符串:

  1. >>> '{:10d}'.format(59
  2. '        59' 
  3. >>> # 6代表一共占用6個字符,0代表使用0填充,2代表保留小數點后2位 
  4. >>> '{:06.2f}'.format(3.14159265
  5. '003.14' 

5、截斷長字符串

“.”用于將字符串截斷成指定長度:

  1. >>> '{:.4}'.format('Xiao Ming')   # 截斷成4位字符串 
  2. 'Xiao' 
  3. >>> '{:8.4}'.format('Xiao Ming')   # 截斷成4位字符串,一共占用8個字符 
  4. 'Xiao    ' 

 

文章“【Python基礎知識】使用format()方法格式化字符串”已幫助

>>本文地址:http://www.028benet.com/zhuanye/2020/52149.html

THE END  

聲明:本站稿件版權均屬中公教育優就業所有,未經許可不得擅自轉載。

1 您的年齡

2 您的學歷

3 您更想做哪個方向的工作?

獲取測試結果
  • 大前端大前端
  • 大數據大數據
  • 互聯網營銷互聯網營銷
  • JavaJava
  • Linux云計算Linux
  • Python+人工智能Python
  • 嵌入式物聯網嵌入式
  • 全域電商運營全域電商運營
  • 軟件測試軟件測試
  • 室內設計室內設計
  • 平面設計平面設計
  • 電商設計電商設計
  • 網頁設計網頁設計
  • 全鏈路UI/UE設計UI設計
  • VR/AR游戲開發VR/AR
  • 網絡安全網絡安全
  • 新媒體與短視頻運營新媒體
  • 直播帶貨直播帶貨
  • 智能機器人軟件開發智能機器人
 

快速通道fast track

近期開班時間TIME

主站蜘蛛池模板: 国产精品露脸国语对白河北| 欧美日韩国产综合视频一区二区三区 | caoporn97在线视频进入| 欧美激情观看一区二区久久| 国产老师的丝袜在线看| 亚洲国产成人精品无码区在线网站| 波多野结衣33| 成人永久福利免费观看| 做暧暧小视频全集免费| 国产男人午夜视频在线观看| 日韩欧美电影在线观看| 国产伦精品一区二区三区免费迷| peeasian人体| 日韩精品欧美视频| 国产123区在线视频观看| а√在线地址最新版| 法国性经典xxxxhd| 国产精品99久久精品爆乳| 久久精品国产99久久无毒不卡| 青楼18春一级毛片| 扒开双腿疯狂进出爽爽动态图 | 全彩里番acg里番本子| CAOPORN视频在线观看| 欧美日韩国产色综合一二三四| 国产一国产二国产三国产四国产五| 三年片在线影院| 欧美一级免费看| 免费能直接在线观看黄的视频| 国产超爽人人爽人人做| 天天干天天做天天操| 亚洲午夜爱爱香蕉片| 韩国三级大全久久电影| 巫山27号制作视频直播| 亚洲欧美日韩精品一区| 麻豆视频免费播放| 打扑克又痛又叫原声| 亚洲一线产区二线产区精华| 艾粟粟小青年宾馆3p上下| 女人182毛片a级毛片| 亚洲国产AV一区二区三区| 精品乱码久久久久久久|