gpt4 book ai didi

python - 自定义python函数不起作用

转载 作者:行者123 更新时间:2023-12-03 08:15:51 24 4
gpt4 key购买 nike

我正在从Codecademy学习Python。

有一个问题:

编写一个带有一个参数的函数shut_down(您可以使用任何您喜欢的东西;在这种情况下,我们将s用于字符串)。 shut_down函数以'Shutting down...''Yes''yes'作为参数时应返回'YES',并以'Shutdown aborted!''No''no'时返回'NO'

为此,我写了这个:

def shut_down(n):
p=n.lower()
if p=="yes":
return "Shutting down..."
elif p=="no":
return "Shutdown aborted!"

但是,当我尝试运行它时,发生以下错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'yes' is not defined*

请帮助我...我的代码中是否存在某种错误?

最佳答案

由于您未包括第1行(错误所在的行),因此很难确切说明发生了什么。但是,从我的个人经验来看,我认为您的问题是两件事之一:

1)您使用的是Python 2.x,并且应该使用input时使用raw_input:

>>> input()
yes
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1, in <module>
NameError: name 'yes' is not defined
>>> raw_input()
yes
'yes'
>>>

2)在第一行上,您应该拥有 yes,而您拥有 'yes':
>>> yes
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'yes' is not defined
>>> 'yes'
'yes'
>>>

在两种情况下(以及我遗漏的任何情况),您都将"is"视为已定义变量而不是字符串。

关于python - 自定义python函数不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18429725/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com