使用代码时有什么意义,比如第8行和第9行,我们可以在第10行使用print
吗?
my_name = 'Zed A. Shaw'
my_age = 35
my_height = 74
my_weight = 180
my_eyes = 'Blue'
my_teeth = 'White'
my_hair = 'Brown'
print(f"Let's talk about {my_name}.") # Line 8
print(f"He's {my_height} inches tall.") # Line 9
print("He's", my_teeth, "pounds heavy.") # Line 10
答案 0 :(得分:2)
您在第8-9行看到的内容被称为格式化字符串文字或 f-strings 。它们在版本3.6中添加到Python中,并在PEP498中详细说明。它们基本上允许您直接在字符串中嵌入表达式。
如果我们可以使用第10行,那么使用第8行和第9行是什么意思?
那么,是什么在print
的正常调用中使用它们的意义呢?在上面的例子中,并不多。当您需要使用多个值格式化字符串时,会显示真正的好处。您可以直接使用变量名称或在字符串中包含表达式,而不是进行一堆字符串连接:
>>> a = 12
>>> b = 6
>>> f'The sum of 12 and 6 is: {a + b}'
'The sum of 12 and 6 is: 18'
>>> name = 'Bob'
>>> age = 32
>>> f'Hi. My name is {name} and my age is {age}'
'Hi. My name is Bob and my age is 32'
>>> def fib(n):
if n <= 1:
return 1
return fib(n - 1) + fib(n - 2)
>>> f'The Fibonacci number of 10 is: {fib(10)}'
'The Fibonacci number of 10 is: 89'
虽然从上面的例子中可能很难说, f-strings非常强大。能够将整个表达式嵌入到字符串文字中是一个非常有用的功能,并且还可以使代码更加清晰简洁。当您开始编写更多代码并且代码的用例变得非常重要时,这将变得非常清楚。
答案 1 :(得分:0)
简而言之,它们允许您格式化字符串。如果您需要格式化(例如)
print(f"hello {world}")
返回
你好世界