【问题标题】:"Wiping the slate clean" in python [duplicate]python中的“擦干净” [重复]
【发布时间】:2017-02-23 15:35:14
【问题描述】:

这应该是非常基本的,但我在上面找不到任何东西,所以......在python中,如果我只想清除我的整个会话并重新开始而不关闭并重新开始,我该怎么做做吗?我想删除所有对象、类定义、函数定义等。我尝试过的一些不起作用的事情是

>>> del(dir())

>>> del(dir()[:])

我以前知道这个,大概是这样的,但是我不记得命令了。我确信这很危险。我保证我只会用它来做善事。

【问题讨论】:

  • 你不能。进口将徘徊
  • 猜你可以在会话开始时创建globals() 的备份,然后在globals() 中创建del 的所有内容,但不在备份中,但是... 为什么我>?
  • @MadPhysicist 没有办法列出进口?因为你可以del 导入。
  • “我保证我只会用它来做善事。”有什么好处?你能澄清一下目的吗?
  • 关闭 Python 并重新开始有什么问题?

标签: python del


【解决方案1】:

这是可能的,但可能不是一个好主意。看到这个:How do I clear all variables in the middle of a Python script?

它甚至会破坏内置函数,因此之后外壳仍然有些破损。您可以循环遍历 dir 并省略所提到的内置函数,但我不明白为什么我要这样做,而不是简单地退出并再次运行 python ([ctrl]-[d] [up arrow] [enter])。

【讨论】:

  • 很好地找到了重复项,但是在找到它之后,您为什么回答问题而不是标记它?
猜你喜欢
  • 1970-01-01
  • 2012-10-21
  • 1970-01-01
  • 2016-11-08
  • 1970-01-01
  • 2018-11-15
  • 1970-01-01
  • 1970-01-01
  • 2011-05-25
相关资源
最近更新 更多