Python将while循环中的元组连接到列表中
我正在迭代一个巨大的元组列表Python将while循环中的元组连接到列表中,python,list,tuples,typeerror,Python,List,Tuples,Typeerror,我正在迭代一个巨大的元组列表 num_list = [('A15', 2, 'BC', 721.16), ('A21', 3, 'AB', 631.31), ('A42', 4, 'EE', 245.43)] 我试图在滚动的5值周期内找到每个元组的最大第四个元素,对于第二个元素,对于第一个元素的每个不同值,所有不同的第一个元素值都存储在一个名为account_2的集合中,并以一种形式输出 ID Max A21 400 A15 489 我的代码如下: first_value = 1 f
num_list = [('A15', 2, 'BC', 721.16), ('A21', 3, 'AB', 631.31), ('A42', 4, 'EE', 245.43)]
我试图在滚动的5值周期内找到每个元组的最大第四个元素,对于第二个元素,对于第一个元素的每个不同值,所有不同的第一个元素值都存储在一个名为account_2的集合中,并以一种形式输出
ID Max
A21 400
A15 489
我的代码如下:
first_value = 1
fifth_value = 5
maximum = []
while first_value <= 24 and fifth_value <= 28:
for num_list[0][0] in account_2:
result = max([i for i in num_list if i[1] <= fifth_value and i[1] >= first_value], key = lambda x:x[3])
maximum.extend(result)
first_value += 1
fifth_value += 1
first_值=1
第五个值=5
最大值=[]
当第一个_值时,误差是由线引起的
for num_list[0][0] in account_2:
它尝试将值从account\u 2
分配到numlist[0][0]
,而numlist[0]
是一个元组,是一个不可变的对象
最起码的解决办法是:
while first_value <= 24 and fifth_value <= 28:
for acc in account_2:
try:
result = max([i for i in num_list if i[1] <= fifth_value and i[1] >= first_value and i[0] == acc ], key = lambda x:x[3])
except ValueError:
result = ()
maximum.extend(result)
first_value += 1
fifth_value += 1
first\u valuenum\u list[0][0]+=(您的新值)
每个元组正好包含一个“第四个元素”,那么最大的第四个元素是什么意思?第二个元素的滚动5值周期如何有第四个元素?