有時(shí)候在使用 Python 的時(shí)候,想要對(duì)一個(gè)數(shù)字或者字符串進(jìn)行補(bǔ)零操作,即把「1」變?yōu)橐粋€(gè)八位數(shù)的「00000001」,這個(gè)時(shí)候可以使用一下方法來進(jìn)行補(bǔ)零。
字符串補(bǔ)零:
可以使用 zfill() 函數(shù)來給字符串補(bǔ)零:
>>> str = "123"
>>> print(str.zfill(8))
00000123
還能把整數(shù)轉(zhuǎn)化成字符來使用 zfill() 補(bǔ)零:
>>> num = 123
>>> print(str(num).zfill(8))
00000123
數(shù)字補(bǔ)零:
對(duì)于數(shù)字可以使用 格式化 的方式來進(jìn)行補(bǔ)零:
>>> number = 123
>>> zfnumber = "%08d" % number
>>> print(zfnumber)
00000123
>>> type(zfnumber)
class 'str'>
可以看到格式化后的數(shù)字類型變?yōu)樽址愋汀?/p>
python給輸出整數(shù)前補(bǔ)零
有一些不同位數(shù)的數(shù)字,比如1、22、333、4444,正常作為數(shù)字或轉(zhuǎn)字符串輸出可能位數(shù)不一樣,某些時(shí)候輸出到文本在后續(xù)處理會(huì)帶來麻煩。如果想保證位數(shù)一樣,在前面補(bǔ)0。
操作非常簡單,只要用s = '%04d' % n轉(zhuǎn)成字符串就可。
舉個(gè)栗子
for n in range(1000):
s = '%04d' % n
print(s)
其中有一個(gè)很小的問題就是,如果%04d中的0漏了,寫成%4d就存在問題。
總結(jié)
到此這篇關(guān)于Python數(shù)字/字符串補(bǔ)零操作的文章就介紹到這了,更多相關(guān)Python補(bǔ)零操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- python入門字符串拼接\截取\轉(zhuǎn)數(shù)字理解學(xué)習(xí)
- python入門課程第五講之序列和字符串
- Python如何使用print()函數(shù)輸出格式化字符串
- 10個(gè)有用的Python字符串函數(shù)小結(jié)
- 怎么處理Python分割字符串時(shí)有多個(gè)分隔符
- Python基本數(shù)據(jù)類型之字符串str
- python如何正確的操作字符串
- python字符串的多行輸出的實(shí)例詳解
- Python的文本常量與字符串模板之string庫
- 關(guān)于Python中字符串的各種操作