Python Crashcourse-10-4-为什么获胜';我的代码版本不能工作吗?
我目前正在使用python Crashcourse学习python。我的问题涉及练习10-4(来宾手册)。我试图弄明白为什么我的代码不能工作(我得到一个语法错误)。我的代码和这本书几乎完全一样 我的版本:Python Crashcourse-10-4-为什么获胜';我的代码版本不能工作吗?,python,python-3.x,Python,Python 3.x,我目前正在使用python Crashcourse学习python。我的问题涉及练习10-4(来宾手册)。我试图弄明白为什么我的代码不能工作(我得到一个语法错误)。我的代码和这本书几乎完全一样 我的版本: with open(filename, 'a') as file_object: file_object.write(file_object"{name}\n") print(file_object"Hi {name}, y
with open(filename, 'a') as file_object:
file_object.write(file_object"{name}\n")
print(file_object"Hi {name}, you've been added to the guest book.")
这本书是:
with open(filename, 'a') as f:
f.write(f"{name}\n")
print(f"Hi {name}, you've been added to the guest book.")
我知道我所要做的就是将
file\u对象
缩短为f
,它会起作用,但我的问题是file\u对象
为什么不起作用?它不只是像f
这样的变量吗?为什么长度很重要?就教程而言,这是一个关于crashcourse的糟糕例子。
作为文件句柄的文件名的f与作为格式说明符的写入/打印行中的f不同
with open(filename, 'a') as file_object:
file_object.write(f"{name}\n")
print(f"Hi {name}, you've been added to the guest book.")
就教程而言,这是crashcourse上一个糟糕的例子。 作为文件句柄的文件名的f与作为格式说明符的写入/打印行中的f不同
with open(filename, 'a') as file_object:
file_object.write(f"{name}\n")
print(f"Hi {name}, you've been added to the guest book.")
请用正确的格式发布代码(这对于Python来说至关重要)。请注意,编辑框中有一个代码图标。使用它。在任何情况下,
file\u对象“{name}\n”
应该是什么意思?似乎没有理由用file\u object
来预加字符串——这样做你想做什么?如果这本书就是这么做的,那就太糟糕了。f.write
中的f
与f“{name}\n”
中的f
不同。第一个f
是指一个文件,但第二个f
是被称为f-string
的语法的一部分,这是在Python中创建格式化字符串的一种方法。在一本针对初学者的书中,用同一个符号在一行中表示两种截然不同的东西是非常令人困惑的。鉴于上下文,你的问题是一个很好的问题。你的评论似乎与你的问题无关(在下面已经被充分地回答了——认为标记是被接受的)。如果你有进一步的问题,把它当作一个不同的问题来问。我明白你现在在说什么。非常感谢。请用正确的格式发布代码(这对于Python来说至关重要)。请注意,编辑框中有一个代码图标。使用它。在任何情况下,file\u对象“{name}\n”
应该是什么意思?似乎没有理由用file\u object
来预加字符串——这样做你想做什么?如果这本书就是这么做的,那就太糟糕了。f.write
中的f
与f“{name}\n”
中的f
不同。第一个f
是指一个文件,但第二个f
是被称为f-string
的语法的一部分,这是在Python中创建格式化字符串的一种方法。在一本针对初学者的书中,用同一个符号在一行中表示两种截然不同的东西是非常令人困惑的。鉴于上下文,你的问题是一个很好的问题。你的评论似乎与你的问题无关(在下面已经被充分地回答了——认为标记是被接受的)。如果你有进一步的问题,把它当作一个不同的问题来问。我明白你现在在说什么。非常感谢。