从for循环创建列表

时间:2013-10-08 18:24:08

标签: python

到目前为止这是我的代码

print("L = ",[4,10,4,2,9,5,4])

Startlist = [4,10,4,2,9,5,4]
usrinput = int(input("Enter an element to search for in the list: "))
for i in [i for i,x in enumerate(Startlist) if x == usrinput]:
    print(i)

我正在尝试从for循环打印的数字中创建一个新列表。这是我通过输入4获得的示例运行

L =  [4, 10, 4, 2, 9, 5, 4]
Enter an element to search for in the list: 4
0
2
6

我怎么能把0 2 6变成[0,2,6]?

感谢您的回复

2 个答案:

答案 0 :(得分:3)

只需打印列表理解:

print([i for i,x in enumerate(Startlist) if x == usrinput])

答案 1 :(得分:3)

你已经列出了名单!代码中的繁重工作在您创建并迭代的临时数组中。

 newlist = [i for i,x in enumerate(Startlist) if x == usrinput]