Python如何将range生成的整数列表转为带前导零的字符串列表?
把整数列表转为带前导零的字符串列表(Python)
嘿,这个需求在处理文件名、序号这类场景里特别常见,我给你分享几个Python里简单好用的实现方式:
方法一:使用f-string格式化(Python 3.6+推荐)
f-string是Python 3.6之后推出的语法,简洁又直观,直接在格式化时指定补零规则就行:Range1 = list(range(1, 11)) result = [f"{num:02d}" for num in Range1] print(result) # 输出: ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10']这里
02d的意思是把数字格式成两位整数,如果数字本身只有一位(比如1-9),就自动在前面补个零,刚好符合你的需求。方法二:使用str.format()方法
要是你还在使用Python 3.6之前的版本,str.format()是兼容性更好的选择,原理和f-string一致:Range1 = list(range(1, 11)) result = ["{:02d}".format(num) for num in Range1] print(result)方法三:使用str.zfill()方法
zfill()方法专门用来在字符串左侧填充零,直到达到指定长度,操作起来也很方便:Range1 = list(range(1, 11)) result = [str(num).zfill(2) for num in Range1] print(result)先把整数转成字符串,再用
zfill(2)让字符串长度固定为2,不够的话前面自动补零,对于1-10的数字来说完全适用。
小提示:如果之后需要处理更大的数字(比如三位数),只需要把对应的位数(比如02d里的2、zfill的2)改成3就行,灵活性拉满~
内容的提问来源于stack exchange,提问作者codeinsteinn
相关产品推荐
相关产品推荐

