我是python和定义函数的新手!
我正在编写代码,有时我会问同样的问题,这就是为什么我要为其使用函数。我正在尝试这样:
def cont():
ans = input("Continue? ")
return ans
但是它没有在ans上存储任何内容,因为每次我调用它时,都会收到一条错误消息,指出ans尚未声明!
有人可以帮助我吗?
答案 0 :(得分:1)
您的功能没有错。这是一个示例:
def cont():
ans = input("Continue? ")
return ans
for i in range(2):
print(cont())
输出:
Continue? y
y
Continue? n
n
如果您需要在if-statement
中使用它:
for i in range(3):
result = cont()
if result == 'y':
print('yes')
elif result == 'n':
print('no')
else:
print("I don't understand")
输出:
Continue? y
yes
Continue? n
no
Continue? p
I don't understand
但是,如果您现在不打算扩展cont()
函数,并对其进行更复杂的操作,那么它就毫无用处,因为您可以在任何使用的地方简单地使用input("Continue? ")
cont()
。
答案 1 :(得分:0)
您的ans
仅在cont()
函数范围内定义,您不能直接从该函数外部访问它。使用ans
将return ans
发送回代码其余部分的方式是最主要的,现在,您只需要将该值存储在可以从其余代码访问的内容中即可。这是一个示例代码,我在while循环的每一遍中都将cont()
的输出保存在变量check
中。
def cont():
ans = input("Continue? ")
return ans
gonna_continue = True
while gonna_continue:
check = cont()
if check == "no":
gonna_continue = False
print("All Done")
样品输出
Continue? 1
Continue? 2
Continue? 5
Continue? sbdj2
Continue? no
All Done