Python 从for循环创建列表

Python 从for循环创建列表,python,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) 然而,我正试图从打印的数字的循环中创建一个新的列表。这是我通

这是到目前为止我的代码

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)
然而,我正试图从打印的数字的循环中创建一个新的列表。这是我通过输入4得到的示例运行

L =  [4, 10, 4, 2, 9, 5, 4]
Enter an element to search for in the list: 4
0
2
6
如何将026转换为[0,2,6]


感谢您的回复

只需打印列表即可:

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

只需打印列表即可:

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

你已经在名单上了!代码中的重担在于创建和迭代的临时数组中

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

你已经在名单上了!代码中的重担在于创建和迭代的临时数组中

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

您已经在这里有了列表:
[i代表i,x在enumerate(Startlist)中,如果x==usrinput]
您已经在这里有了列表:
[i代表i,x在enumerate(Startlist)中,如果x==usrinput]
谢谢!是的,很明显,我太过遵循传统的for循环结构,以至于没有必要单独打印(i)个循环!是的,很明显,我太过遵循传统的for循环结构,以至于没有必要打印(i)separately@user2840144您可能应该通过单击您喜欢的答案旁边的勾号来接受其中一个答案。@user2840144您可能应该通过单击您喜欢的答案旁边的勾号来接受其中一个答案。