我是python的新手,我坚持这个。我需要创建一个列表列表
由此列表c
形成:['asdf','bbnm','rtyu','qwer']
。
我需要创建这样的东西:
b
:[['a','s','d','f'],['b','b','n','m'],['r','t','y','u'],['q','w','e','r']]
我尝试使用for
循环,但它没有用完。我不知道自己犯了什么错误。
答案 0 :(得分:4)
您可以list comprehension使用list()
:
>>> c = ['asdf','bbnm','rtyu','qwer']
>>>
>>> b = [list(s) for s in c]
>>> b
[['a', 's', 'd', 'f'], ['b', 'b', 'n', 'm'], ['r', 't', 'y', 'u'], ['q', 'w', 'e', 'r']]
请注意,使用字符串参数调用list()
会返回一个包含该字符串字符的列表:
>>> list('abc')
['a', 'b', 'c']
我们上面所做的是通过理解将其应用于列表的每个元素。
答案 1 :(得分:1)
使用地图功能。
>>> a= ['asdf','bbnm','rtyu','qwer']
>>> map(list ,a )
[['a', 's', 'd', 'f'], ['b', 'b', 'n', 'm'], ['r', 't', 'y', 'u'], ['q', 'w', 'e', 'r']]
>>>
答案 2 :(得分:-1)
你可以做一些更容易理解的事情:
b = []
for x in c:
list(x).append(b)