python – ValueError:要解压缩的值太多

python – ValueError:要解压缩的值太多,第1张

概述为什么这段代码错了? for i,j in range(100),range(200,300): print i,j 当我测试这个语句时,我看到了这个错误 ValueError: too many values to unpack 但是当我测试的时候 for i, j in range(2),range(2): print i,j 一切都是正确的! range(2)给出一个列表[ 为什么这段代码错了?

for i,j in range(100),range(200,300):    print i,j

当我测试这个语句时,我看到了这个错误

ValueError: too many values to unpack

但是当我测试的时候

for i,j in range(2),range(2):     print i,j

一切都是正确的!

解决方法 range(2)给出一个列表[0,1].因此,您的i,j将从第一个列表中获取,然后从第二个列表中获取.

所以,你的循环类似于: –

for i,j in [0,1],[0,1]:    print i,j

印刷品: –

0 10 1

现在,如果你有range(3),那么它将失败,因为,range(3)给出了一个3元素列表,它不能在两个循环变量中解包.

所以,你做不到: –

for (i,j) in [[0,1,2]]:    print i,j

它会失败,给你错误.

尝试使用zip,将两个列表压缩成一个: –

>>> for (i,j) in (zip(range(2),range(3))):    print i,j0 01 1>>>

在上面的情况下,zip会将您的列表转换为包含2个元素的元组列表,因为您正在压缩2个列表.

>>> zip(range(2),range(3))[(0,0),(1,1)]

同样,如果您压缩三个列表,您将获得3元素元组的列表.

总结

以上是内存溢出为你收集整理的python – ValueError:要解压缩的值太多全部内容,希望文章能够帮你解决python – ValueError:要解压缩的值太多所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1195757.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-03
下一篇2022-06-03

发表评论

登录后才能评论

评论列表(0条)

    保存