因此,首先您可能需要检查pythons list()函数对字符串做了什么。
python doc
简单的put list(“foo”)将创建列表['f','o','o']。我猜这可能不是您期望函数所做的:)
您将所有的电影存储在一个字符串中,这可能是可以的,但我建议使用一个简单的数组(特别是如果您想以后再次使用数据,比如随机选择一个项目)。
因此,不要将所有输入的电影名称串联起来:add = list(add) + list(raw_input("Enter movie name: "))
您可以简单地将它们附加到数组中:
^{pr2}$
如果你用随机选择(movies)将返回该数组中的伪随机项。
所以你的代码可能是这样的:import sys, random
# Movie_List is now here
movies = []
addmovie = raw_input("Type 'a' to add a title, 'b' to pick a movie or '/' to quit: ")
while addmovie == 'a' or addmovie == '/' or addmovie == 'b':
if addmovie == 'a':
movies.append(raw_input("Enter movie name: "))
elif addmovie == '/':
print 'Goodbye.'
sys.exit()
elif addmovie == 'b':
break
addmovie = raw_input("Type 'a' to add a title, 'b' to pick a movie or '/' to quit: ")
# random choice
random_movie = random.choice(movies)
print random_movie