我有一个列表嵌套列表,l = [['a','b', 'c'], 'd','e', ['f', 'g']]
。列表元素并不总是字母。
现在,我使用了下面的代码:
>>> index =1
>>> for i in l:
... if isinstance(i, list):
... for j in i :
... print index, j
... index = index + 1
... else:
... print index, i
... index = index + 1
...
1 a
2 b
3 c
4 d
5 e
6 f
7 g
你可以看到我打印结果的格式。 另一个例子:
l = [['aaa','bbb','xxx'], 'ddd']
Output =
1 aaa
2 bbb
3 xxx
4 ddd
我的问题是是否有更好的方法来做这件事或者Python中是否有内置函数。
PS:列表只会嵌套一层。因此,
[ [a, [b,c] ], d, e ]
不可能出现。
['w1','w2','w3']
,现在我创建了一个函数get_meanings(word)
,它将返回传递为参数的单词的含义。然后我使用map(get_meanings, words)
,这将返回上述形式的输出,因为如果一个单词有多个可用的含义,API会返回一个list
。 - ronnieget_meanings(word)
返回["meaning1", "meaning2"]
,表示有多个含义,或者返回"meaning"
,表示只有一个含义。我的建议是,在第二种情况下让它返回["meaning"]
,这样就不需要特殊处理了。 - Gareth Latty