和老黄一起学Python

Python 格式化输出

2017-01-13  本文已影响93人  老黄爱Python
输出信息使我们获取程序调试信息的重要渠道;
恰到好处的输出格式能帮我们直观的查看调试信息。
>>> tmp = '%c'%100    #'%c'%100, 将100转化为对应的ASCII码字符'd'
>>> print (tmp)
d
>>>
>>> print ('HelloWorld')
HelloWorld
>>> phoneTypes = 'Xiaomi, Iphone, Oppo'
>>> print ('%s' % phoneTypes)
Xiaomi, Iphone, Oppo
>>> 
>>> x = 10
>>> print ('%d' % x)                       #10进制
10
>>> print ('0x%x' % x)                     #16进制(小写)
0xa
>>> print ('0x%x' % (id(10)))              #对象的地址使用16进制表示
0x5094a580
>>> print ('0x%X' % x)                     #16进制(大写)
0xA
>>> print ('%o' % x)                       #8进制
12
>>> print ('%d%' % 10)                            #直接使用%报错
Traceback (most recent call last):
  File "<pyshell#58>", line 1, in <module>
    print ('%d%' % 10)
ValueError: incomplete format
>>> 
>>> print ('%d%%' % 10)                           #使用%%可以正常输出
10%
>>> pi = 3.1415926
>>> print ('%d' % pi)      #使用%d只能显示整数
3
>>> print ('%f' % pi)      #使用浮点显示
3.141593                   #小数点之后只显示6位
>>> print ('%1.7f' % pi)   #指定小数点显示7位
3.1415926
>>> print ('%1.8f' % pi)   #指定小数点显示8位,后面默认补0
3.14159260
>>> x = 10
>>> y = 20
>>> z = 30
>>> print ('%d' % x)                          #%d是占位符,
10
>>> print ('x=%d, y=%d, z=%d' % (x, y, z))    #占位符的个数要和要显示对象数量一致,否则会报错
x=10, y=20, z=30
>>> print ('x=%d, y=%d, z=%d' % (x, y))       #占位符与显示对象不一致
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: not enough arguments for format string
>>> print ('x=%d y=%d z=%d' % (x, y, z))
x=10 y=20 z=30     #想要一种效果,x,y,z分割一定距离,例如:x=10      y=20      z=30
#制定占位符的宽度:
>>> print ('x=%5d y=%5d z=%5d' % (x, y, z))
x=   10 y=   20 z=   30

%nd的作用,请看下面输出:

>>> x = 1
>>> print ('x=%1d' % x)
x=1
>>> print ('x=%2d' % x)     #%2d,制定占位符宽度为2,右对齐
x= 1                        #=后面空一格
>>> print ('x=%3d' % x)
x=  1                       #=后面空两格
>>> x, y, z = 10, 20, 30
>>> print ('x=%5d y=%5d z=%5d' % (x, y, z))
x=   10 y=   20 z=   30      #我们想要:x=10      y=20      z=30这个效果
>>>
>>> print ('x=%-5d y=%-5d z=%-5d' % (x, y, z))  #输出左对齐:'-'
x=10    y=20    z=30

常用的格式化输出接介绍到这里,我们在调试程序的时候可以灵活使用这些数据,得到我们想要的输出结果。

上一篇下一篇

猜你喜欢

热点阅读