Python 代码运行前的初始化(清空变量、命令窗口)

1 篇文章 0 订阅
1 篇文章 0 订阅

编写过Matlab代码的读者,基本都会有编写初始化代码的习惯,如下代码段1所示:

clc;    % 清空命令窗口所有内容
clear;    % 清除所有的变量
close all;    % 关闭所有的图片窗口

代码段1

但现在很多时候都是使用Python进行编程,那么要如何去在Python中实现上述类似的功能呢。可以参考以下代码段2(注意是可以,但不一定适用):

%reset-f   #强制清除所有的变量,相当于clear
# 特别注意:上述代码行需要放在最开头,避免把导入的库清理了
# 其中-f表示不需要经过用户同意直接执行reset,即force reset without asking for confirmation.

import matplotlib.pyplot as plt

%clear  #相当于MATLAB的"clc;", 表示清空命令窗口.
plt.close("all")    #相当于MATLAB的"close all", 表示关闭所有的图片窗口.

代码段2

在常规的Python环境中,“%reset-f ”和 “%clear” 不是有效的命令,它们是特定于交互式环境(如IPython或Jupyter Notebook)的magic命令。因此,很多读者在采用代码段2的解决办法后往往会出现以下报错(同样也是我碰到的问题,也是我撰写这篇博客的原因):

SyntaxError: invalid syntax

既然没有现成的,那么我们就不妨直接通过编写自定义函数来实现类似的功能。代码段3编写了一个函数代替“%reset-f”来清除所有全局变量,然后在你的代码中调用该函数来实现重置变量的效果,也可以直接复制粘贴到代码的最开头。

import sys

def reset_variables():
    global_vars = list(globals().keys())
    for var in global_vars:
        if var not in ['__name__', '__doc__', '__loader__', '__package__', '__spec__']:
            del globals()[var]

reset_variables()

代码段3

对于清空命令窗口的功能,可以在在命令窗口点击鼠标右键→选择“全部清除”,也可以使用“os.system”来执行系统命令来清除屏幕,如代码段4所示:

import os
os.system('cls')    # Windows下使用该关键词cls,MacOS下关键词替换为clear

代码段4

[参考文献]

  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lightდ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值