如何将变量step插入Numpy mgrid?

2024-04-19 23:06:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着用numpy.mgrid要创建两个网格数组,但我需要一种插入变量作为步数的方法。在

没有可变的步数,numpy.mgrid与此代码一起正常工作:

x, y = np.mgrid[0:1:3j, 0:2:5j]

但是,我想要的是这样的,因为我无法在生成网格数组的代码行中显式地声明我的步骤号(这些值可能会因脚本中的其他进程而更改):

^{pr2}$

有没有一种方法可以返回与第一个方法等效的结果?在

我试着运行我的3行代码,有括号和不带括号,还尝试了一些其他的修改,但似乎没有任何效果。在

注意:我试着阅读this主题,但我不确定该主题所涉及的内容是否适用于此问题;我不太理解被问到的内容或是如何回答的。(另外,我试着从答案中运行一行代码,它返回了一个MemoryError。)如果说的主题确实回答了我的问题,有人能更好地解释一下吗,以及它如何适用于我的问题?在


Tags: 方法代码numpy脚本声明网格内容主题
2条回答

问题是括号后面的j不能转换成复数。在

In [41]:(1)j
  File "<ipython-input-41-874f75f848c4>", line 1
    (1)j
       ^
  SyntaxError: invalid syntax

将一个值乘以1j就可以了,这几行给出了x, y相当于第一行:

^{pr2}$

我想你想要的是把步数转换成复数。在

num_x_steps = 3
x_steps = complex(str(num_x_steps) + "j")

num_y_steps = 5
y_steps = complex(str(num_y_steps) + "j")

x, y = np.mgrid[0:1:x_steps, 0:2:y_steps]

相关问题 更多 >