Python中的格式化输出

时间:2023-03-09 19:51:16
Python中的格式化输出

百分号格式化输出

  • 百分号默认右对齐

%s

字符串 (采用str()的显示)

%r

字符串 (采用repr()的显示)

%c

单个字符

%b

二进制整数

%d

十进制整数

%i

十进制整数

%o

八进制整数

%x

十六进制整数

%e

指数 (基底写为e)

%E

指数 (基底写为E)

%f

浮点数

%F

浮点数,与上相同

%g

指数(e)或浮点数 (根据显示长度)

%G

指数(E)或浮点数 (根据显示长度)

示例1

name = input('请输入姓名')
age = input('请输入年龄')
height = input('请输入身高')
msg = "我叫%s,今年%s 身高 %s" % (name, age, height)
print(msg)

示例2

name = input('请输入姓名:')
age = input('请输入年龄:')
job = input('请输入工作:')
hobbie = input('你的爱好:') msg = '''------------ info of %s -----------
Name : %s
Age : %d
job : %s
Hobbie: %s
------------- end -----------------''' %(name,name,int(age),job,hobbie)
print(msg)

示例3

name = input('请输入姓名')
age = input('请输入年龄')
height = input('请输入身高')
msg = "我叫%s,今年%s 身高 %s 学习进度为3%%s" %(name,age,height)
print(msg)

示例4

name = input('请输出你的名字:')
age = input('请输出你的年龄:')
like = input('请输出你的爱好:')
work = input('请输出你的工作:')
information = '''
------ %s's personal information-----
Name: %-3s
Age : %-2d
Like: %-20s
Work: %-10s
---------------- end ----------------''' %(name, name, int(age), like, work)
print(information)

format格式化输出

format格式化输出转换如下:

  • 'b' - 二进制。将数字以2为基数进行输出。
  • 'c' - 字符。在打印之前将整数转换成对应的Unicode字符串。
  • 'd' - 十进制整数。将数字以10为基数进行输出。
  • 'o' - 八进制。将数字以8为基数进行输出。
  • 'x' - 十六进制。将数字以16为基数进行输出,9以上的位数用小写字母。
  • 'e' - 幂符号。用科学计数法打印数字。用'e'表示幂。
  • 'g' - 一般格式。将数值以fixed-point格式输出。当数值特别大的时候,用幂形式打印。
  • 'n' - 数字。当值为整数时和'd'相同,值为浮点数时和'g'相同。不同的是它会根据区域设置插入数字分隔符。
  • '%' - 百分数。将数值乘以100然后以fixed-point('f')格式打印,值后面会有一个百分号。

示例1

print('{0:b}'.format(3))
print('{:c}'.format(20))
print('{:d}'.format(20))
print('{:o}'.format(20))
print('{:x}'.format(20))
print('{:e}'.format(20))
print('{:g}'.format(20.1))
print('{:f}'.format(20))
print('{:n}'.format(20))
print('{:%}'.format(20))

示例2

print('{} {}'.format('hello','world'))    # 不带编号

示例3

print('{0} {1}'.format('hello','world'))  # 带数字编号

示例4

print('{a} {tom} {a}'.format(tom='hello',a='world'))  # 带关键字

文章来自选摘

百分号输出部分来自老男孩视频

format输出部分来自:https://www.cnblogs.com/fat39/p/7159881.html