📜  Python | 输出格式化 output format(1)

📅  最后修改于: 2023-12-03 15:04:02.397000             🧑  作者: Mango

Python | 输出格式化 output format

在Python中,我们经常需要将程序运行的结果输出到屏幕上,这就需要对输出进行格式化。本篇文章将为大家介绍Python中常用的输出格式化方法,包括字符串格式化和格式化输出。

字符串格式化

在Python中,字符串格式化使用%操作符,它可以将字符串中的占位符替换成指定的值。常见的占位符有以下几种:

| 占位符 | 描述 | | --- | --- | | %s | 字符串(采用str()的显示) | | %r | 字符串(采用repr()的显示) | | %c | 单个字符 | | %d | 十进制整数 | | %i | 十进制整数 | | %o | 八进制整数 | | %x | 十六进制整数(小写字母) | | %X | 十六进制整数(大写字母) | | %e | 指数(小写'e') | | %E | 指数(大写'E') | | %f | 浮点数 | | %g | 指数(e)或浮点数(根据显示长度) | | %G | 指数(E)或浮点数(根据显示长度) |

例如,将整数和字符串合并输出:

age = 18
name = 'Tom'
print('My name is %s, and I am %d years old.' % (name, age))

输出结果为:

My name is Tom, and I am 18 years old.
格式化输出

Python还提供了一种更加便捷的格式化输出方法——str.format()。它可以将值按照指定的格式输出。

在格式化字符串中,用一对大括号 {} 表示占位符。如果在一个大括号中内部使用了一个数字,则表示要传入一个数字索引,值为传入的参数的索引值;如果没有数字,则按照传入的顺序顺序填充占位符。

print('{0}, {1}, {2}'.format('a', 'b', 'c'))
print('{},{},{}'.format('a', 'b', 'c'))

输出结果为:

a, b, c
a,b,c

在格式化字符串中使用关键字参数,可以让输出更加清晰和易读:

print('My name is {name}, and I am {age} years old.'.format(name='Tom', age=18))

输出结果为:

My name is Tom, and I am 18 years old.

在关键字参数中可以使用变量:

name = 'Tom'
age = 18
print('My name is {name}, and I am {age} years old.'.format(name=name, age=age))

输出结果为:

My name is Tom, and I am 18 years old.

从Python 3.6开始,还提供了一种更加简洁易读的格式化输出方式——f-string,它使用{}包含需要插值的表达式,表达式可以是任何有效的Python表达式,其中可以使用函数、变量、表达式等:

name = 'Tom'
age = 18
print(f'My name is {name}, and I am {age} years old.')

输出结果为:

My name is Tom, and I am 18 years old.

使用f-string时需要注意,表达式的值只有在运行时才能确定,所以要确保表达式的值在使用时已经定义了。

结语

本篇文章介绍了Python中常用的输出格式化方法,包括字符串格式化和格式化输出。掌握这两种方法对于Python的学习和应用都有很大的帮助,读者应该结合实际场景加深理解。