python interactive 清空内存_python代码执行后,进入interactive模式

python在启动的时候,有一个-i 参数。此参数的功能是,在运行完python代码后,直接进入interactive模式。

在某些时候,为了调试方便,或者少些一些through-away的代码,可以使用此参数。在有 -i 参数的情况下,python解释器先执行代码,然后不退出解释器,而是直接进入交互模式。此时,我们在交互模式下,就可以查看各种对象的状态,并可以在交互模式下调用调试。

使用python3 -h,查看 -i 参数的解释:

-i : inspect interactively after running script; forces a prompt even

if stdin does not appear to be a terminal; also PYTHONINSPECT=x

比如我有一个函数A,我不想在交互模式下写这个函数,因为写完就没了。因此我在一个文件中编写此函数,文件名为func_a.py:

def A(**kw):

print('i am function A')

然后,我想在交互模式下测试这个A函数。我以往的做法是先进入python解释器,然后 from func_a import A,有点费劲,因为每次A修改了之后,还要重新reload。

现在可以这样,使用 -i 参数:

$ python3 -i func_a.py

>>> dir()

['A', '__annotations__', '__builtins__', '__cached__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']

>>> A()

i am in funcion A

func_a.py执行过程没有任何输出,然后我们就看到了>>>提示符,此时A函数在全局的namespace里面,可以直接调用。如果A函数有修改,退出python解释器,使用 -i 参数重新进一次!我理解python设计这个 -i 参数,主要是为了调试代码。

-- EOF --

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值