Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.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 无法从函数定义中解包错误_Python_Function_Boolean - Fatal编程技术网

Python 无法从函数定义中解包错误

Python 无法从函数定义中解包错误,python,function,boolean,Python,Function,Boolean,我创建了一个函数“grid”,用于表示坐标的一维或二维网格。当我运行我的代码时,我得到以下错误:无法解包非iterable非类型对象 我已经使用布尔逻辑来设置我的函数,因此如果我想将参数设置为1D并使用X值,我可以将参数设置为==False def grid(x_min, x_max, y_min, y_max, dx): if x_min and x_max and not y_min and not y_max: grid_x = np.arange(x_min,

我创建了一个函数“grid”,用于表示坐标的一维或二维网格。当我运行我的代码时,我得到以下错误:无法解包非iterable非类型对象

我已经使用布尔逻辑来设置我的函数,因此如果我想将参数设置为1D并使用X值,我可以将参数设置为==False

def grid(x_min, x_max, y_min, y_max, dx):

    if x_min and x_max and not y_min and not y_max:
        grid_x = np.arange(x_min, x_max, dx)
        return grid_x, dx

    if x_min and x_max and y_min and y_max:
        grid_x = np.arange(x_min, x_max, dx)
        grid_y = np.arange(y_min, y_max, dx)
        return grid_x, grid_y, dx



grid_x, grid_y, dx = grid(0, 10, 0, 10, 1)

我知道问题出在我的最后一行代码上,但我无法理解这个错误对我的函数的实际意义。

因为x_min是0,两个if语句都是false,所以方法没有返回任何值(这意味着没有返回值)

这意味着您试图不打开任何文件包

grid\u x,grid\u y,dx=None

由于x\u min为0,两个if语句都为false,因此方法没有返回任何值(这意味着没有返回值)

这意味着您试图不打开任何文件包

grid\u x,grid\u y,dx=None

整数0的布尔值为False

In [169]: bool(0)
Out[169]: False
因为x_min为0,所以代码中的if块都不会执行,并且函数返回一个无法解包的none

如果要检查参数是否已传递,应该执行以下操作

if arg is not None

整数0的布尔值为False

In [169]: bool(0)
Out[169]: False
因为x_min为0,所以代码中的if块都不会执行,并且函数返回一个无法解包的none

如果要检查参数是否已传递,应该执行以下操作

if arg is not None