Matlab 2 Python代码转换

时间:2014-12-15 11:55:53

标签: python

我正在尝试将MATLAB .m源代码文件转换为Python脚本。 .m文件的前几行是:

clear all
close all
clc

下面是我的Python对应代码的代码:

清除所有内容:

def clearall():
    """clear all globals"""
    for uniquevar in [var for var in globals().copy() if var[0] != "_" and var != 'clearall']:
        del globals()[uniquevar]

CLC:

import os
clear = lambda: os.system('cls')

clear

但我没有得到MATLAB'关闭所有'的代码对应物?我上面的代码参考也是正确的吗?

1 个答案:

答案 0 :(得分:0)

我建议您考虑是否转换这三种功能中的任何一种。

如果您在Python中编写脚本并在大多数情况下反复启动它,那么应该并且将启动专用解释器。这样一个新的解释器是开箱即用的,不受先前变量定义的影响,并且还将获得一个干净的屏幕来写入(空命令窗口)。但是,如果您使用的是IDE,有时会产生类似于重新启动脚本的副作用,而不会清除所有先前定义的变量,但在这种情况下,您也会遇到其他问题。

回答你的问题对应的"关闭所有"我会说它会依赖于你正在使用的绘图库。对于Matlab,该行将关闭在脚本中启动的每个打开的数字。在Python中,只有解释器运行时,数字才会存在,并且在解释器关闭时它将被关闭。如果你想关闭中间数字,你必须明确地关闭它们。