gpt4 book ai didi

python - Python 中的 Matlab 类型结构

转载 作者:行者123 更新时间:2023-11-28 19:28:53 26 4
gpt4 key购买 nike

有什么办法可以在python中实现下面的matlab代码吗?

% Initialization 
savedT2(N) = struct(); minValerr(M) = struct(); %M, N are sizes
% Looping
for lib0=1:M
for lib1=1:N
%doSeveralThings()
savedT2(lib1).filed1 = resultWithNOperations
save savedT2 savedT2
end
minValerr(lib0).field2 = savedT2;
save minValerr minValerr
end

我在 python 中使用了以下 'ctype' 结构定义样式:

class savedT2(Structure):  
# structure to be called within functional operations
_fields_ = [("field1", c_int)]

第二个结构体定义变成:

class minValerr(Structure):  
# structure to be called within functional operations with fields: field2
_fields_ = [("field2", c_int)]

类似于 Matlab 代码,我们有:

rec0 = savedT2(); rec1 = minValerr  
for k in range(M):
for j in range(N):
doSomething()
rec0[j].field1= resultsDoSoemthin
#Assigning
rec1[k].field2 = rec0

但是这个方法行不通。我想避免使用列表、字典和类似的容器(除非使用它们是唯一可用的选项);因为该操作必须执行超过 100 000 次。此外,在使用之前未定义的新字段不断更新它们之后,我还想将具有多个字段的结构传递给许多 python 函数。在python中实现上述matlab代码是否有最佳方式?

最佳答案

MATLAB 可以自动将其代码转换为 C/C++,您可以在“MATLAB Coder”中找到这些函数。然后,在 Python 中重用它们。

关于python - Python 中的 Matlab 类型结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47590038/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com