运行.py文件直到指定的行号

Kir*_*ies 6 python terminal

在linux终端打字

python script.py 
Run Code Online (Sandbox Code Playgroud)

将运行script.py并退出python控制台,但是如果我只想运行脚本的一部分并让控制台保持打开状态呢?例如,运行script.py到第15行并保持控制台打开以进一步编写脚本.我该怎么做?

让我们说这是可能的,然后控制台仍然打开并script.py运行到第15行,然后我可以从控制台内部调用来自其他py文件的片段吗?

...就像是

python script.py 15 #(opens script and runs lines 1-15 and leaves console open)
Run Code Online (Sandbox Code Playgroud)

然后打开控制台,我想从第25-42行开始 anotherscript.py

>15 lines of python code run from script.py 
> run('anotherscript.py', lines = 25-42)
> print "I'm so happy the console is still open so I can script some  more")
I'm so happy the console is still open so I can script some  more
>
Run Code Online (Sandbox Code Playgroud)

Chr*_*ger 17

你最好的选择可能是pdb,在Python调试.您可以启动脚本pdb,在第15行设置断点,然后运行脚本.

python -m pdb script.py
b 15                       # <-- Set breakpoint on line 15
c                          # "continue" -> run your program
# will break on line 15
Run Code Online (Sandbox Code Playgroud)

然后,您可以检查变量并调用函数.从Python 3.2开始,您还可以使用interact内部命令在pdb当前执行点获取常规Python shell!

如果这符合你的账单而且你也喜欢IPython,你可以查看IPdb,这比普通的pdb好一点,并将你带入一个IPython shell interact.