def choosecolours():
colourletters = ["g","b","r","m","o","c"]
colourlist = []
while len(colourlist) < 3:
colour = input("First choose a colour by entering the first letter of the colour you like: ")
if colour in colourletters:
colourlist.append(colour)
else:
print("Enter a valid letter!")
print(colourlist)
当我输入这个代码时,不管我输入什么,我总是得到输出['r','b','m']。我看不出这个代码不起作用的任何原因?你知道吗
您的代码中有
colourlist
定义的globaly elsware吗。 因为您没有返回colourlist
,所以当您尝试在函数外部访问它时,它应该显示为未定义,除非您在其他地方有它。如果是这样,那么当您全局访问它时,您只会得到另一个全局引用的引用。你知道吗按原样运行上述代码会出现错误:
尝试:
这与变量的范围有关。本地定义的变量包含在本地,即在函数中使用
var
的变量不能在函数外访问,因为该名称在函数末尾被释放。你知道吗请尝试以下代码:
如果要使用外部函数中的变量,可以将指向该函数的变量指针作为参数。你知道吗
相关问题 更多 >
编程相关推荐