我在python中有一个列表,它包含字母和数字元素,比如list = ["a", 1, 2, 3, "b", 4, 5, 6]
,我想将它分成2个列表,其中包含字母后面的数字,所以list1 = [1, 2, 3]
和list2 = [4, 5, 6]
。 a
和b
元素可能是相反的顺序,但通常情况下,我想将a
和b
元素中的数字元素存储在单独的列表中。我想出了创建一个循环与条件最简单的办法:在Python中只对列表的一部分进行迭代
#Generating a list for numeric elements following "a":
for e in list[list.index("a")+1:]:
if not str.isdigit(e):
break
else:
list1.append(e)
我"b"
后做同样为list2
和数字元素。 但是会不会有更优雅的解决方案?我对Python很陌生,但我已经看到了漂亮的单线程构造,在我的情况下是否会出现这样的情况?提前致谢。
你能给予一个完整的代码示例澄清问题多一点,比如? – linusg
现在更好:D,但我认为标题仍然令人困惑......您是否想遍历列表并跳过特定元素或其他内容? – linusg