gpt4 book ai didi

python - 如何在解释器中测试包含空行的python代码

转载 作者:行者123 更新时间:2023-11-28 19:20:25 26 4
gpt4 key购买 nike

当 python 解释器看到换行符时,它似乎决定“现在是时候执行你的代码了”。有什么解决方法吗?

scala 等效于在代码片段上运行“:paste”。

顺便说一句,我们有环境限制,所以我们的目的是严格使用 python 解释器 (2.6.X),而不是像 ipython 或其他 python 版本这样“更好”的东西。

最佳答案

作为解决方法,您可以打开 block ,例如 try - except block ,或 if block :

>>> if True:
... #my statements
... #which I don't want to execute right now
... pass # or do_stuff()
...

或者将您的代码片段包装在一个函数中,然后调用它。

显而易见的解决方案是使用支持粘贴的解释器 shell,例如 ipython (有 %paste%cpaste ),但不幸的是,这不是您的选择;默认的 python shell 没有类似的机制 AFAIK。

另一种解决方法是将代码片段保存到临时文件中并调用 execfile(filename) ,或者使用 exec(<pastedcode>)对于小片段。

实际上,结合exec , 滥用多行字符串作为 heredocs, 和隐式 _可能是最好的解决方法,看起来很方便:

>>> """
... x = 5
... y = x**2
... print(x,y)
... """
'\nx = 5\ny = x**2\nprint(x,y)\n'
>>> exec(_)
5 25
>>> x, y # above code was executed in current scope, see?
(5, 25)

关于python - 如何在解释器中测试包含空行的python代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26508978/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com