Python 在范围其他列表中创建的列表

Python 在范围其他列表中创建的列表,python,Python,我的清单如下: [3,2,4,5] [['1','2','3'],['1','2'],['1','2','3','4'],['1','2','3','4','5']] 我想要一个如下的列表: [3,2,4,5] [['1','2','3'],['1','2'],['1','2','3','4'],['1','2','3','4','5']] 我的意思是我想要一个列表,它是由另一个列表的计数创建的。 我想用字符串迭代每个 如何用python编写它 我尝试了以下代码: for i,v

我的清单如下:

[3,2,4,5]
[['1','2','3'],['1','2'],['1','2','3','4'],['1','2','3','4','5']]
我想要一个如下的列表:

[3,2,4,5]
[['1','2','3'],['1','2'],['1','2','3','4'],['1','2','3','4','5']]
我的意思是我想要一个列表,它是由另一个列表的计数创建的。 我想用字符串迭代每个

如何用python编写它

我尝试了以下代码:

    for i,val in enumerate(list_mf_input):
        self.eachMembership.append([])
        for value in range(1, val+1):
            self.eachMembership.append([value])

您可以将
范围
列表
一起使用,并且列表理解:

>>> a = [3, 2, 4, 5]
>>> [list(range(1, x+1)) for x in a]
[[1, 2, 3], [1, 2], [1, 2, 3, 4], [1, 2, 3, 4, 5]
要生成所有字符串,请使用
str
添加
map

>>>[list(map(str, range(1, x+1))) for x in a]
[['1', '2', '3'], ['1', '2'], ['1', '2', '3', '4'], ['1', '2', '3', '4', '5']]

试试这个代码。我试着尽可能地简化

lol=[3,2,4,5]
ans=[]
temp=[]
for i in lol:
    for j in range(1,i+1):
        temp.append(j)
    ans.append(temp)
    temp=[]
print(ans) 

希望它能帮助你提高速度它发送这个错误类型错误:“list”对象不能调用你的list
list
?把
temp=[]
移到
for i…
之后,你就可以消除外部
temp=[]
为什么
enumerate()
-你从来没有使用过
i