在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.