我想分配一个变量,但是相同的变量只增加一个列表中的每个值,例如my_list=[[aa],[ab],[ba],[bb],[bc],[cb],[cc],[cd]]
,我希望d
成为变量并拥有d+=1
继续查看列表,例如输出看起来或多或少,value[0]=d0
,value[1]=d1
,value[2]=d2
,value[3]=d3
,value[4]=d4
,{{1} },value[5]=d5
,value[6]=d6
。
value[7]=d7
答案 0 :(得分:1)
也许您正在寻找列表理解?
value = [d[0] for d in my_list]
列表推导使您可以处理iterable的每个元素以生成新列表。上面的示例获取嵌套列表的第一个元素,将每个元素添加到新列表中。您的输入列表将转换为:
[aa, ab, ba, bb, bc, cb, cc, cd]
答案 1 :(得分:1)
我想到的一种方式:
def my_list(n):
my_list, my_num, my_var = [], 0, '' #multiple assignment of variables
for my_num in range(n + 1): #second argument is exclusive, this implies (0, n + 1)
my_var = 'd' + str(my_num)
my_list.append(my_var)
return my_list
或者,您可以使用词典(相同的想法,但有点不同):
def my_dict(n):
my_dict, my_num, my_var = {}, 0, ''
for my_num in range(n + 1):
my_var = 'd' + str(my_num)
my_dict[my_num] = my_var
return my_dict
它会导致每个条目的密钥为my_num
,值为my_var
。你可以用任何东西替换'd'
,只要它是一个字符串。如果它没有格式化为字符串,并且my_num
是整数或浮点数,它会将它们一起添加(3 + 7
将导致10
,而不是37
}),不连接它们。