Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python数组解包错误:需要3个以上的值_Python_Arrays - Fatal编程技术网

Python数组解包错误:需要3个以上的值

Python数组解包错误:需要3个以上的值,python,arrays,Python,Arrays,我是Python的新手,正在尝试比较数组中存储的一些值。当我运行代码时,我得到一个错误: ValueError:需要3个以上的值才能解包。 我的代码是: walls = ['300', '300', '300', '500'] for a, b, c, d in walls: if int(a) <= x <= int(c): if int(b) <= y <= int(d): 抛出错误的是“for”行。我知道有在线解决方案,但没有一个是

我是Python的新手,正在尝试比较数组中存储的一些值。当我运行代码时,我得到一个错误: ValueError:需要3个以上的值才能解包。 我的代码是:

walls = ['300', '300', '300', '500']
for a, b, c, d in walls:
    if int(a) <= x <= int(c):
            if int(b) <= y <= int(d):

抛出错误的是“for”行。我知道有在线解决方案,但没有一个是针对阵列的,因此非常感谢您的帮助。

您的代码应该是:

walls = ['300', '300', '300', '500']
a, b, c, d = walls # this line replaces the `for` loop
if int(a) <= x <= int(c):
    if int(b) <= y <= int(d):
        pass # or do something...

您的代码应为:

walls = ['300', '300', '300', '500']
a, b, c, d = walls # this line replaces the `for` loop
if int(a) <= x <= int(c):
    if int(b) <= y <= int(d):
        pass # or do something...

仅供参考,在Python中,它们被称为列表。实现是一个动态数组,类似于Java/C ArrayList或Ruby Arrayth。for在列表上迭代,因此它第一次运行循环时,会得到“300”。可以将其解压缩为“3”、“0”、“0”三个值。@w0lf的答案向您展示了如何做您想要做的事情。仅供参考,在Python中,它们被称为列表。实现是一个动态数组,类似于Java/C ArrayList或Ruby Arrayth。for在您的列表上迭代,因此第一次运行循环时,它会得到“300”。可以将其解压缩为“3”、“0”、“0”三个值。@w0lf的答案向您展示了如何做您想要做的事情。另外,将墙定义更改为walls=['300'、'300'、'500']可以避免重写其余部分。虽然这样会留下一个毫无用处的for循环…@twalberg:我不在乎你的建议。没有理由围绕不正确的代码嵌套数据结构。@StevenRumbalski是真的,但最终的用例完全可能涉及元组列表——需要实际迭代的东西——因此可能仍然值得注意……作为替代方案,将walls定义更改为walls=['300','300','300','500']可以避免重写它的其余部分。虽然这样会留下一个毫无用处的for循环…@twalberg:我不在乎你的建议。没有理由围绕不正确的代码嵌套数据结构。@StevenRumbalski是真的,但完全有可能最终的用例将涉及元组列表——实际需要迭代的东西——因此可能仍然值得注意。。。。