📅  最后修改于: 2023-12-03 15:10:02.346000             🧑  作者: Mango
在 Python 中,我们可以使用 print()
函数来打印值。在打印时,我们可以指定输出的格式。这篇文章介绍了 Python 中可以用于打印格式化字符串的几种方法。
格式化字符串是一种将值插入字符串中的方法。在 Python 中,我们使用 {}
符号作为占位符,并使用 .format()
函数来插入值。例如:
name = 'Alice'
age = 25
print('My name is {} and I am {} years old.'.format(name, age))
输出:
My name is Alice and I am 25 years old.
我们还可以使用 {}
符号指定值的格式。例如,要表示使用两位小数打印浮点数,可以使用 {: .2f}
:
pi = 3.14159
print('Pi is approximately {:.2f}.'.format(pi))
输出:
Pi is approximately 3.14.
我们还可以使用其他格式指示符来指定输出格式化的值。下表列出了常用的一些:
| 格式指示符 | 描述 |
| ---------- | --------------------------------------------------------- |
| d
| 整数 |
| f
| 定点数 |
| e
| 指数 |
| s
| 字符串 |
| %
| 百分比 |
| x
| 十六进制 |
| o
| 八进制 |
| c
| 字符 |
x = 100
print('The value of x is {:d}'.format(x))
salary = 1111.11
print('I earn {:.2f} a month'.format(salary))
pi = 3.141592654
print('The value of Pi is approximately {:.2e}'.format(pi))
message = 'Hello, World!'
print('{:.5s}'.format(message))
percent = 0.12345
print('The value of percent is {:.2%}'.format(percent))
number = 255
print('The value of number in hex is {:x}'.format(number))
print('The value of number in octal is {:o}'.format(number))
letter = 'c'
print('The letter is {:c}'.format(letter))
输出:
The value of x is 100
I earn 1111.11 a month
The value of Pi is approximately 3.14e+00
Hello
The value of percent is 12.35%
The value of number in hex is ff
The value of number in octal is 377
The letter is c
Python 3.6 引入了一种称为 f-strings 的新格式化字符串方式。使用 f-strings 可以更简单地格式化字符串。在 f-strings 中,我们用大括号括起来的表达式来表示变量值,并在前面加上 f
前缀。例如:
name = 'Alice'
age = 25
print(f'My name is {name} and I am {age} years old.')
输出:
My name is Alice and I am 25 years old.
和格式化字符串一样,我们可以在 f-strings 中指定变量的格式:
pi = 3.14159
print(f'Pi is approximately {pi:.2f}.')
输出:
Pi is approximately 3.14.
Python 支持一种称为旧式字符串格式的格式化字符串方式。在旧式字符串格式化中,我们使用 %
符号来指定占位符,并使用一个元组来包含要插入的值。例如:
name = 'Alice'
age = 25
print('My name is %s and I am %d years old.' % (name, age))
输出:
My name is Alice and I am 25 years old.
我们还可以使用其他格式标志符号。这里是一些常用的:
| 格式标志符号 | 描述 |
| ------------ | --------------------------------------------------------- |
| %s
| 字符串 |
| %d
| 十进制整数 |
| %f
| 定点数,格式为“ .m n f”(m 和 n 表示位数) |
| %e
| 字符串,格式为“ .m n e”(m 和 n 表示位数) |
| %x
| 十六进制 |
| %o
| 八进制 |
| %c
| 字符 |
x = 100
print('The value of x is %d' % x)
salary = 1111.11
print('I earn %.2f a month' % salary)
pi = 3.141592654
print('The value of Pi is approximately %.2e' % pi)
message = 'Hello, World!'
print('%.5s' % message)
percent = 0.12345
print('The value of percent is %.2f%%' % (percent * 100))
number = 255
print('The value of number in hex is %x' % number)
print('The value of number in octal is %o' % number)
letter = 'c'
print('The letter is %c' % letter)
输出:
The value of x is 100
I earn 1111.11 a month
The value of Pi is approximately 3.14e+00
Hello
The value of percent is 12.35%
The value of number in hex is ff
The value of number in octal is 377
The letter is c
在 Python 中,我们有多种途径来打印格式化字符串。如果您正在使用 Python 3.6 或更高版本,建议使用 f-strings;否则,使用 .format()
或 %
符号。