推荐答案
name = "Alice" age = 30 # 使用 f-string 格式化字符串 greeting = f"Hello, my name is {name} and I am {age} years old." print(greeting)
本题详细解读
什么是 f-string?
f-string 是 Python 3.6 引入的一种字符串格式化方法。它通过在字符串前加上 f
或 F
前缀,允许在字符串中直接嵌入表达式。f-string 的语法简洁且易于阅读,是 Python 中最推荐的字符串格式化方式。
f-string 的基本用法
嵌入变量:在 f-string 中,可以直接在花括号
{}
中嵌入变量名,变量会被自动替换为其值。name = "Bob" age = 25 message = f"{name} is {age} years old." print(message) # 输出: Bob is 25 years old.
嵌入表达式:f-string 不仅支持变量,还支持任何有效的 Python 表达式。
x = 10 y = 20 result = f"The sum of {x} and {y} is {x + y}." print(result) # 输出: The sum of 10 and 20 is 30.
格式化数字:f-string 支持对数字进行格式化,比如控制小数位数、填充、对齐等。
pi = 3.14159 formatted_pi = f"Pi rounded to 2 decimal places: {pi:.2f}" print(formatted_pi) # 输出: Pi rounded to 2 decimal places: 3.14
调用函数:可以在 f-string 中直接调用函数。
def greet(name): return f"Hello, {name}!" user = "Charlie" greeting = f"{greet(user)} How are you?" print(greeting) # 输出: Hello, Charlie! How are you?
f-string 的优点
- 简洁性:f-string 语法简洁,减少了代码的复杂性。
- 可读性:直接在字符串中嵌入表达式,使得代码更易读。
- 性能:f-string 在运行时性能优于其他字符串格式化方法,如
%
格式化或str.format()
。
注意事项
Python 版本:f-string 仅在 Python 3.6 及以上版本中可用。
花括号转义:如果需要在 f-string 中使用花括号
{}
,可以使用双花括号{{
和}}
进行转义。text = f"{{This is inside curly braces}}" print(text) # 输出: {This is inside curly braces}