以下代码具有一个名为“ list_a”的列表-循环了4次。
list_a=['red','green','blue', 'yellow']
list_1=[]
for i in list_a[0]:
list_1.append(i)
print(list_1)
list_2=[]
for i in list_a[1]:
list_2.append(i)
print(list_2)
list_3=[]
for i in list_a[2]:
list_3.append(i)
print(list_3)
list_4=[]
for i in list_a[3]:
list_4.append(i)
print(list_4)
如果要遍历“ list_a”中的每个元素并将每个字母拆分为一个字符串,则可以按照上面的代码进行操作。但是,有一种方法可以编写较短的代码-而不是每次循环遍历'list_a'元素时都编写相同的代码。
例如-我的尝试是:
list_a=['red','green','blue', 'yellow']
number=0
while number<len(list_a):
list_(int(number+1))=[]
for i in list_a[number]:
list_(int(number+1)).append(i)
print(list_(int(number+1))
number+=1
希望您能提供帮助-谢谢。
答案 0 :(得分:1)
最短的代码:
[[*a] for a in list_a]
输出:
[['r', 'e', 'd'], ['g', 'r', 'e', 'e', 'n'], ['b', 'l', 'u', 'e'], ['y', 'e', 'l', 'l', 'o', 'w']]
说明:*a
称为解包,当应用于字符串时,将其解包为单个字符。 [*a]
表示我们正在将其解压缩到列表中。仅适用于Python 3。
答案 1 :(得分:0)
这是你的追求吗?
list_a = ['red', 'green', 'blue', 'yellow']
list_b = [[ch for ch in word] for word in list_a]
print(list_b)
输出:
[['r', 'e', 'd'], ['g', 'r', 'e', 'e', 'n'], ['b', 'l', 'u', 'e'], ['y', 'e', 'l', 'l', 'o', 'w']]
或者也许:
list_a = ['red', 'green', 'blue', 'yellow']
for word in list_a:
print([ch for ch in word])
结果:
['r', 'e', 'd']
['g', 'r', 'e', 'e', 'n']
['b', 'l', 'u', 'e']
['y', 'e', 'l', 'l', 'o', 'w']
答案 2 :(得分:0)
尝试使用以下代码:
list_a=['red','green','blue', 'yellow']
output_lst = []
for word in list_a:
temp = []
for char in word:
temp.append(char)
output_lst.append(temp)
print(output_lst)
答案 3 :(得分:0)
在您的第二个代码(尝试)中,您无法像在代码中那样定义列表名称(Python不能那样工作),相反,您必须创建列表列表(嵌套列表)解决这个问题。我正在附上示例代码来解决此问题并输出。
示例代码
lst=[list(i) for i in list_a]
离开列表_a Be
list_a=['red','green',]
其输出
[[''r','e','d'],['g','r','e','e','e','n']]
看到的是包含每个元素的嵌套列表
答案 4 :(得分:0)
这是获得相同输出的简短方法:
代码:
list_a=['red','green','blue', 'yellow']
for word in list_a:
print(list(word))
输出:
['r', 'e', 'd']
['g', 'r', 'e', 'e', 'n']
['b', 'l', 'u', 'e']
['y', 'e', 'l', 'l', 'o', 'w']
答案 5 :(得分:0)
遍历list_a
中的每个元素时,请使用列表推导将每个字母作为字符串存储在另一个列表中。我尝试了以下代码:
list_a=['red','green','blue', 'yellow']
list_b=[]
for i in list_a:
list_b.append([j for j in i])
for i in list_b:
print(i)
此处list_b
包含list_a
中每个字符串的子列表。每个子列表都包含一个字符串的所有字符作为单独的字符串。
这给出了以下输出:
C:\User\Python>python script.py
['r', 'e', 'd']
['g', 'r', 'e', 'e', 'n']
['b', 'l', 'u', 'e']
['y', 'e', 'l', 'l', 'o', 'w']