如何配置交互式python以允许方法内的空行

时间:2013-05-16 17:37:19

标签: python

是否可以在交互式python中测试方法并在其中保留空行?

def f1():
  import random
  import time

  time.sleep(random.randint(1, 4))

这给出了熟悉的错误

IndentationError: unexpected indent

所以,是的解决方法是删除函数内的所有空行。我想知道是否真的必须能够以交互模式/ REPL运行。

感谢

2 个答案:

答案 0 :(得分:8)

可能没什么帮助,但是如果空白行是缩进的,它就可以工作。为清晰起见显示了点:

def f1():
....import random
....import time
....
....time.sleep(random.randint(1, 4))

答案 1 :(得分:0)

一个选项,特别是将代码粘贴到交互式解释器中,是将其嵌入到原始字符串文字中并exec

exec(r'''
def f1():
  import random
  import time

  time.sleep(random.randint(1, 4))''')

如果您输入的代码已使用'''字符串,请用r"""..."""引号括起来。如果它已经同时使用'''""",则无法使用。