Python中的%d是什么意思?

1 个回答

Coco老师 - 科普专家
擅长:编程教育

python中%d表示格式化一个对象为十进制整数。使用后,在需要输出的长字符串中占位置。输出字符串时,可以依据变量的值,自动更新字符串的内容。

使用示例:

num=14  
   
#%d打印时结果是14  
print("num=%d" % num)          # output: num=14  
   
#%1d意思是打印结果为1位整数,当整数的位数超过1位时,按整数原值打印,所以%1d的打印结果还是14  
print("num=%1d" % num)          # output: num=14  
   
#%3d意思是打印结果为3位整数,当整数的位数不够3位时,在整数左侧补空格,所以%3d的打印结果是 14  
print("num=%3d" % num)          # output: num= 14  
   
#%-3d意思是打印结果为3位整数,当整数的位数不够3位时,在整数右侧补空格,所以%3d的打印结果是14_  
print("num=%-3d" % num)          # output: num=14_  
   
#%05d意思是打印结果为5位整数,当整数的位数不够5位时,在整数左侧补0,所以%05d的打印结果是00014  
print("num=%05d" % num)          # output: num=00014  
   
#%.3d小数点后面的3意思是打印结果为3位整数,  
#当整数的位数不够3位时,在整数左侧补0,所以%.3d的打印结果是014  
print("num=%.3d" % num)          # output: num=014  
   
#%.0003d小数点后面的0003和3一样,都表示3,意思是打印结果为3位整数,  
#当整数的位数不够3位时,在整数左侧补0,所以%.3d的打印结果还是014  
print("num=%.0003d" % num)       # output: num=014  
   
#%5.3d是两种补齐方式的综合,当整数的位数不够3时,先在左侧补0,还是不够5位时,再在左侧补空格,  
#规则就是补0优先,**终的长度选数值较大的那个,所以%5.3d的打印结果还是  014  
print("num=%5.3d" % num)         # output: num=  014  
   
#%05.3d是两种补齐方式的综合,当整数的位数不够3时,先在左侧补0,还是不够5位时,  
#由于是05,再在左侧补0,**终的长度选数值较大的那个,所以%05.3d的打印结果还是00014  
print("num=%05.3d" % num)        # output: num=00014