使用字符串列表x:
x = ['foo', 'bar']
如何在一行中执行以下操作?
y = []
for word in x:
y.append([n for n in word])
print y
导致:
[['f', 'o', 'o'], ['b', 'a', 'r']]
答案 0 :(得分:4)
使用list
和简单的列表理解:
>>> x = ['foo', 'bar']
>>> y = [list(word) for word in x]
>>> y
[['f', 'o', 'o'], ['b', 'a', 'r']]
或将map
与list
一起使用:
>>> y = map(list, x)
>>> y
[['f', 'o', 'o'], ['b', 'a', 'r']]
答案 1 :(得分:3)
您可以从列表解析中的每个字符串创建list
。
>>> x = ['foo', 'bar']
>>> [list(i) for i in x]
[['f', 'o', 'o'], ['b', 'a', 'r']]
答案 2 :(得分:3)
>>> map(list, ['foo', 'bar'])
[['f', 'o', 'o'], ['b', 'a', 'r']]