python - 错误:NameError:未定义名称“Caitlin”
问题描述
你能告诉我为什么我会收到这个错误吗?当我输入输入时,我期待一个字符串,但我收到以下错误,
File "ifelif.py", line 1, in <module> first_name = input("What is your first name? ") File "<string>", line 1, in <module> NameError: name 'Caitlin' is not defined
我正在使用这段代码:
first_name = input("What is your first name? ")
print("Hello,", first_name)
if first_name == "Caitlin":
print(first_name, "is learning Python")
print("Have a great day {}!".format(first_name))
当我在终端中输入带有引号的名称以创建一个字符串时,它可以工作,但我得到 2 个字符串而不是 1 个字符串:
('Hello,', 'Ed')
文件名是“ifelif.py”
非常感谢!
解决方案
测试了你的代码。我觉得很好。完全没有错误。它的行为方式与我期望的一样,或者您的输出期望是什么?
first_name = input("What is your first name? ")
print("Hello,", first_name)
if first_name == "Caitlin":
print(first_name, "is learning Python")
print("Have a great day {}!".format(first_name))
第一个输入:男孩,输出是:
What is your first name? boy
Hello, boy
第二个输入:凯特琳,输出是:
What is your first name? Caitlin
Hello, Caitlin
Caitlin is learning Python
Have a great day Caitlin!
这可能只是代码编写风格/偏好,但我会这样做:
print(f"{first_name} is learning Python")
print(f"Have a great day {first_name}!")
它被称为“f string print”,您将变量放在大括号中
推荐阅读
- unix - 使用 sed 在特定字符串后添加一行,不能使其适用于涉及 ' ( / 等的字符串
- python - 如何将自定义 python 函数应用于 Tensorflow 中的配对数据?
- python - 如何在 Django REST framework mixin 中引用子类?
- apache-spark - Kubernetes 上的 Zeppelin Spark Master 设置
- android - 如何通过改造在 android 中的 web 中显示 html 响应
- javascript - ReactJS:从.map中导入的数据字符串渲染html
- firebase - 每次刷新应用程序时都会触发 Flutter web Firebase onAuthStateChanges
- python - DNA微卫星计数器
- blazor - Blazor WebAssembly Jquery 方法不起作用
- sublimetext3 - 如何在崇高的文本中设置括号缩进以将括号放在带有制表符的新行上?