Tuple unpacking遇ValueError:too many values to unpack(expected 2)原因求解
错误原因分析
你的代码里,T1中的每个元素都是包含3个元素的元组(比如(1,3,6)),但循环时你试图把每个元组解包到t1和t2两个变量里——3个值要匹配2个变量,数量完全不对应,这就触发了ValueError。
打个比方,这就像你执行t1,t2 = (1,3,6),右边有3个值,左边只有2个变量承接,自然会报错。
如果你的需求是取每个元组的前两个元素,可以改成这样:
T1=[(1,3,6),(9,4,6),(7,11,8)] for (t1,t2,_) in T1 : print(t1)
用_接收第三个不需要的元素;要是只需要第一个元素,更简单:
for tup in T1 : print(tup[0])
内容的提问来源于stack exchange,提问作者Sreenivas Jois
相关产品推荐
相关产品推荐

