python 格式化输出(居中、靠右、靠左对齐)

format 方式

{: >} 靠右对齐

print('{0:>5}'.format('aa')) # 占5个字符空间,0是format参数中的变量索引
>> '   aa'

{: <} 靠左对齐

print('{0:<5}'.format('aa')) # 占5个字符空间,0是format参数中的变量索引
>> 'aa   '

{:^} 居中对齐

print('{0:^5}'.format('aa')) # 占5个字符空间,0是format参数中的变量索引
>> ' aa  '

其他扩展写法

其中5这个长度除了是常量,还可以是变量

通过形参取width变量的值

print('{0:>{width}}'.format('aa', width=5))# 靠右对齐,占5个字符空间,0是format参数中的变量索引
>> '   aa'
width = 5
print('{0:<{width}}'.format('aa', width)) # 靠右对齐,占5个字符空间,0是format参数中的变量索引
>> 'aa   '

通过参数位置取 width 变量的值

因为width也是format的一个参数,所以也可以用参数索引来取值,通过位置取值时,不可以有形参。

width =  5
print('{0:^{1}}'.format('aa', width))# 居中对齐,占5个字符空间,0是format参数中的变量索引
>> ' aa  '

{:*<}, {:&<}, {:0<},分别表示靠左对齐,用'*'、'&'、'0'填充空白字符

width = 5
print('{0:&>{1}}'.format('aa', width)) # 占5个字符空间,0是format参数中的变量索引
>> '&&&aa'

'%' 方式

'%5d',靠右对齐,占5个字符空间

'%-5d',靠左对齐,占5个字符空间

print("%5d" % 'aa') # 靠右对齐
print("%-5d" % 'aa') # 靠左对齐
d = 345.678
s = "hello!"
i = 1234
# "%"表示进行格式化输出,"%"之后的内容为格式的定义。
print("%f" % d)#  "f"表示格式化输出浮点数。   
print("%9.2f" % d)#"9.2"中的9表示输出的长度,2表示小数点后的位数
print("%+9.2f" % d)#"+"表示输出的数带正负号。
print("%-9.4f" % d) # "-"表示输出的数左对齐(默认为右对齐)。
print("%+-9.3f" % d) # "+-"表示输出的数带正负号且左对齐。   
print("%d" % i) # /"d"表示输出十进制整数。 
print("%o" % i) # "o"表示输出八进制整数。   
print("%x" % i) # "d"表示输出十六进制整数。   
print("%#x" % i) # "d"表示输出带有十六进制标志的整数。
print("%s" % s) # "d"表示输出字符串。   
print("输出一个浮点数:%f,一个整数:%d,一个字符串:%s" % (d,i,s)) # 可以输出多个变量,注意顺序。   

参考

python中怎么用format居中_python format()函数的用法

Python--用format函数实现对齐打印(左对齐、右对齐和居中对齐)

关于python:如何将打印输出或字符串格式化为固定宽度?

原文地址:https://www.cnblogs.com/hi3254014978/p/15647480.html