matlab 如何在Python的for循环中从函数中获取数组?[duplicate]

hvvq6cgz  于 2022-12-13  发布在  Matlab
关注(0)|答案(1)|浏览(167)

此问题在此处已有答案

How do I return multiple variables from a single function in python 3? [duplicate](1个答案)
5天前关闭。
此帖子已在5天前编辑并提交审核,无法重新打开帖子:
原始关闭原因未解决
我是Python的新手,我想写一个函数,给定n个输入,返回m个输出。我可以在Matlab中这样做,函数如下:
[a,b,c,d] = my_function(x,y,z,h)
其中(x,y,z,h)是多维数组。
特别是具有:

A=np.zeros((3,150,150))
B=np.zeros((3,150,150))
C=np.zeros((3,150,150))
D=np.zeros((3,150,150))
p=zero(3,1)

给定for循环:

x.shape=(1540,1838)
step=10
jj=0
for j in range(0,1838,step):
     jj=jj+1 #tot= 184

     ii=0
     for i in range(0,1540,step):
         ii=ii+1 #total 154
         pos=x(i,j)

现在在for循环中执行my_function,我得到输出:

a=A(:,ii,jj)
b=B(:,:,ii,jj)
c=C(:,:,ii,jj)
d=D(:,ii,jj)

我怎么能用Python风格写同样的函数呢?

3b6akqbq

3b6akqbq1#

def my function(x, y, z, h):
  # do some compute stuff
  # ...
  return a, b, c, d

相关问题