首頁 > 軟體

python格式化字串的實戰教學(使用預留位置、format方法)

2022-08-16 14:02:21

格式化字串是什麼?

Python字串的格式化處理主要是用來將變數(物件)的值填充到字串中,在字串中解析Python表示式,對字串進行格式化顯示(左對齊、右對齊、居中對齊,保留數位有效位數)。

1.使用預留位置格式化字串:

使用預留位置格式化輸出時:在%後面加數位表示給這個字元多少個位置,不足電腦會自動使用空格補齊。正數表示左對齊,負數表示右對齊。如:%4d表示左對齊一共佔4的位置,%-8d表示右對齊一共佔8個位置

預留位置:

  1. %s :字串的格式化,也是最常用的
  2. %d :格式化整數,也比較常用
  3. %c :格式化字元及ASCII碼
  4. %f :格式化浮點數,可以指定小數後面的精度,預設是小數點6位
  5. %o :格式化無符號八進位制數
  6. %x :格式化無符號十六進位制數
  7. %e : 將整數、浮點數轉換成科學計數法
  8. %%: 當字串中存在格式化標誌時,需要用 %%表示一個百分號;

例子:

預留位置%s、%c、%%的使用:

name='小明'
print('%s的使用:')
print('我的名字叫%s!'%(name))
print('我的名字叫%4s!'%(name))   #右對齊
print('我的名字叫%-4s!'%(name))  #左對應
#由於在python中只有字串這種型別,使用在這裡%c只能表示ASCII碼,並不能表示字元
character=56
print('c的使用:')
print('%d在ASCII碼中表示字母%c'%(character,character))
schedule=99
print('%%的使用:')
print('當前下載進度為%d%%!'%(character))

由於在python中只有字串這種型別,所以在python中%c只能表示ASCII碼,並不能表示字元 !

 預留位置%d、%o、%x的使用:

number=18
print('%d使用十進位制為:%d'%(number,number))      #十進位制
print('%d使用八進位製為:%o'%(number,number))      #八進位制
print('%d使用十六進位製為:%x'%(number,number))    #十六進位制

 如果在表示八進位制或者十六進位制時想顯示各進位制的字首時,在%後面加一個#就好:

number=200
print('%d使用八進位製為:%#o'%(number,number))
print('%d使用十六進位製為:%#x'%(number,number))

預留位置 %f、%e的使用:

high=174.5
print('我的身高有%f米'%(high))                    #預設情況
print('我的身高有%.1f米'%(high))                  #小數點保留1位
print('%f使用科學記數法為:%e'%(high,high))

2.使用format方法格式化輸出:

1.不設定指定位置:

name = "{}在{}玩了一天的{}"
data = name.format("小明","網咖","LOL")
print(data)

 2.設定指定名稱:

name = "{name}在{Location}玩了一天的{game}"
data = name.format(Location="網咖",game="LOL",name="小明")
print(data)

3.設定指定位置 :

name = "{2}在{0}玩了一天的{1}"
data = name.format("網咖","LOL","小明",)
print(data)

 注意:指定位置是從0開始算起,而不是1!

總結

到此這篇關於python格式化字串的文章就介紹到這了,更多相關python格式化字串內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com