ValueError:尝试同时迭代两个列表时,解包的值太多(预期为 2)

其_FZX

谁能解释一下这段代码有什么问题?

for game_name,game_size in games_names,games_sizes:
    print(f'Game_Name = {game_name} Size = {game_size}')

这是我尝试迭代两个列表并打印它们的值的 Python 代码,但它给了我这个错误:

ValueError:解包的值太多(预期为 2)

r1v3n

如果你想在同一时刻迭代 2 个列表,你应该使用zip()函数。

例子:

>>> lol = [1,2,3,4,5]
>>> kek = [6,7,8,9,10]
>>> for num, secnum in zip(lol, kek):
...     print(num, secnum)

让我解释一下为什么你不能“解开”它。例如,让我们说我们有这样的名单:arr = [1, 2, 3, 4, 5]在每次迭代中,您只能获得 1 个对象,对吗?

one = arr[0]
two = arr[2]
...

这就是我们如何从列表中获取值的方法。我们也可以分配这样的值:

one, two, three = arr[0], arr[1], arr[2]

在python中有*符号,意味着你可以在列表中“打包”值。

colors = ['cyan', 'magenta', 'yellow', 'black']
cyan, magenta, *other = colors

print(cyan)
print(magenta)
print(other)

输出:

cyan
magenta
['yellow', 'black']

总结解压的作用:

  1. 解包将列表的元素分配给多个变量。
  2. 在像 *variable_name 这样的变量前面使用星号 (*) 将列表的剩余元素打包到另一个列表中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Pandas DataFrame apply()ValueError:太多值无法解包(预期2)

Django-ValueError:太多值无法解包(预期2)

Tensorflow ValueError:太多信息无法解包(预期2)

Sklearn管道引发ValueError:太多值无法解包(预期2)

错误:-试图遍历数据帧中的两列时,要解包的值太多(预期为2)

无法解压缩的值太多(预期为2)[列表]

Python DataFrame-ValueError:太多值无法解包(预期2)

OpenCV Python Numpy:ValueError:太多值无法解包(预期2)

pygame:ValueError:太多值无法解包(预期2)

ValueError:应用cross_correlation_shifts时,要解压缩的值太多(预期为2)

ValueError:太多值无法用Python中的元组列表解包(预期2)

MapReduce:ValueError:太多值无法解包(预期2)

2dHistogram:ValueError:解包的值太多(预期为 2)

Python - ValueError:解包的值太多(预期为 2)

尝试获取多个目录的值时,要解压缩的值太多(预期为 2)错误

从两个列表中插入值 - ValueError:解包的值太多(预期为 2)

Python、Opencv、Imutils:ValueError:解包的值太多(预期为 2)

ValueError:在python3中解包的值太多(预期为2)

ret, frame = video_capture.read() ValueError: 解包的值太多(预期为 2)

ValueError:解包的值太多(预期为 2),而递归函数有 2 个值要返回

发布请求张量流服务:解包的值太多(预期为 2)

错误:- 解包的值太多(预期为 2)python 函数

ValueError:从字典传递值时解包的值太多(预期为 2)

ValueError 在 django 中解压的值太多(预期为 2)

如何修复 ValueError:要解压的值太多(预期为 2)?

ValueError:解压的值太多(预期为 2)Django

使用 django_filters 时,/plants/plants/ 处的 ValueError 值太多无法解包(预期为 2)

对于键,其他值:ValueError:要解包的值太多(预期为 2)(pickle)

Sklearn 管道转换特定列 - ValueError:要解包的值太多(预期为 2)