我有一个列表,它包含列表.内部列表可能是空的.这是结构:
[[],[a,b],[],[c],[d]]
Run Code Online (Sandbox Code Playgroud)
我的代码:
for inner in list:
for char in inner:
print char # I want to add indexes of inner lists here
Run Code Online (Sandbox Code Playgroud)
输出是:
abcd
Run Code Online (Sandbox Code Playgroud)
我希望输出为:
2a2b4c5d
Run Code Online (Sandbox Code Playgroud)
数字是内部列表的索引.有快速的方法吗?
请注意,您不应将其list用作变量名,因为它shadows是内置list类型.
>>> lst = [[],['a','b'],[],['c'],['d']]
>>> for idx, inner in enumerate(lst):
for char in inner:
print idx, char
1 a
1 b
3 c
4 d
Run Code Online (Sandbox Code Playgroud)
你看,这enumerate()是从零开始的.您可以指定第二个参数作为开始,以匹配基于一个的预期输出:
>>> for idx, inner in enumerate(lst, 1):
for char in inner:
print idx, char
2 a
2 b
4 c
5 d
Run Code Online (Sandbox Code Playgroud)
但只有在必要时才这样做,python按惯例计数0.
| 归档时间: |
|
| 查看次数: |
162 次 |
| 最近记录: |