我想创建一个for循环,提示用户输入他们的爱好三次,并将爱好附加到爱好列表中。 最后,爱好列表应该包含所有三个爱好
这就是我所尝试的:
for x in range(3):
hobbies = input('What is your hobby?')
print(hobbies)
list(x) #here i get: 'int' object is not iterable
这似乎行不通
看完答案后,下面是我现在尝试的:
lst= []
lst = [input('What is your hobby?') for _ in range(3)]
lst.append(lst)
print(lst)
所以答案在列表中,但有一件事->;[…]
What is your hobby?as
What is your hobby?q2we
What is your hobby?sfd
['as', 'q2we', 'sfd', [...]]
我该如何摆脱这个[…]
看看下面的代码,它是正常工作。实际上,您还没有将输入附加到原始数组中,这就是您没有得到所需结果的原因
请注意,新问题要分开发布。不要把它们编辑到这个上面
所以问题是,你应该使用这两个命令中的任何一个。基本上,您所做的是通过执行
lst = [input('What is your hobby?') for _ in range(3)]
来定义一个列表在定义列表之后,您已经通过执行
lst.append(lst)
将名为lst
的列表附加或添加到自身中 如果删除这一行,代码应该是好的代码行
lst = [input('What is your hobby?') for _ in range(3)]
基本上做的事情与:所以你不必两个都做
另一方面,请不要误会,但我认为您应该参考python的指南或课程,更好地阐明基本概念。希望这有帮助:)
首先,你要做的是把变量x作为一个列表,在它的作用域之外。x是一个整数,用于迭代由
range(3)
定义的一组数字 相反,你应该做的是创建一个空列表然后在for循环内将所有元素附加到
l
您的代码应该是这样的:
相关问题 更多 >
编程相关推荐