将代码复制并粘贴到 Python 解释器中

新手上路,请多包涵

我想将一段代码复制并粘贴到我的 Python 解释器中。不幸的是,由于 Python 对空格的敏感性,以一种有意义的方式复制和粘贴它并不简单。 (我认为空格被破坏了)有更好的方法吗?也许我可以从文件中加载代码片段。

这只是一个小例子,但如果有很多代码,我想避免键入函数定义中的所有内容或逐行复制和粘贴。

 class bcolors:
    HEADER = '\033[95m'
    OKBLUE = '\033[94m'
    OKGREEN = '\033[92m'
    WARNING = '\033[93m'
    FAIL = '\033[91m'
    ENDC = '\033[0m'

    def disable(self):
        self.HEADER = '' # I think stuff gets mangled because of the extra level of indentation
        self.OKBLUE = ''
        self.OKGREEN = ''
        self.WARNING = ''
        self.FAIL = ''
        self.ENDC = ''

原文由 wp123 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 970
2 个回答

您可以调用 execfile(文件名)。与导入模块大致相同,只是它跳过了模块管理部分并且不需要您将文件夹添加到 sys.path。

编辑:解决原始问题:可以通过调用 exec(codestring) 来执行复制粘贴的代码。

原文由 Pieter Witvoet 发布,翻译遵循 CC BY-SA 2.5 许可协议

通常,您可以通过命令 %cpaste (使用 -- --- 手动结束代码)和 %paste 代码轻松安全地使用 IPython 进行复制粘贴。这对于测试从网页或编辑器复制的代码非常方便:这些命令甚至为您去除前导提示(如 In[1]... )。

IPython 也有一个 %run 命令,它运行一个程序并将你留在一个 Python shell 中,其中包含程序中定义的所有变量,以便你可以使用它们。

为了获得这些功能的帮助: %cpaste? 等。

原文由 Eric O Lebigot 发布,翻译遵循 CC BY-SA 4.0 许可协议

推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏