在Python中,有几种方式来格式化prin`函数的输出。以下是一些常见的方法:
1. 使用百分号 % 运算符(传统方法):
使用 %
操作符来进行格式化是一种较老的方法,但它仍然有效。
name = "Alice"age = 25print("Hello, %s. You are %d years old." % (name, age))
2. 使用`str.format()`方法:
str.format()
提供了一种更现代、更灵活的方式来格式化字符串。
name = "Alice"age = 25print("Hello, {}. You are {} years old.".format(name, age))# 或者使用索引指定顺序:print("Hello, {0}. You are {1} years old.".format(name, age))# 还可以使用关键字:print("Hello, {name}. You are {age} years old.".format(name=name, age=age))
3. 使用f-string(从Python 3.6起引入的格式化字符串字面值):
从Python 3.6开始,可以使用f-strings来格式化字符串,这是一种非常简洁的方法。在字符串前加上 f
前缀,然后在 {}
中放入变量或表达式。
name = "Alice"age = 25print(f"Hello, {name}. You are {age} years old.")
还可以在 {}
中直接执行计算和调用方法:
print(f"Next year, I will be {age + 1} years old.")
4. 使用格式化字符填充和对齐:
data = {"name": "Alice", "age": 25}# 右对齐print("{:>10} {:>10}".format(data['name'], data['age'])) # 输出:' Alice 25'# 左对齐print("{:<10} {:<10}".format(data['name'], data['age'])) # 输出:'Alice 25 '# 居中print("{:^10} {:^10}".format(data['name'], data['age'])) # 输出:' Alice 25 '
5. 使用格式化指定小数点精度:
number = 3.14159265359print("{:.2f}".format(number)) # 输出:3.14
6. 使用格式化来做零填充:
number = 5print("{:02d}".format(number)) # 输出:05
7. 使用print函数的sep和end参数:
这些参数可以用来控制print
函数输出时各个值之间的分隔符,以及输出结束后的字符。默认情况下,sep=' '
(一个空格),end='\n'
(一个换行符)。
print("Hello", "world", sep="-", end="!!!")
# 输出:Hello-world!!!