我想调试一个接受多个命令行参数的 Python
脚本,例如
myscript.py --input1 ./dir/file1.txt --input2 ./dir/file2.txt
在 Pycharm
中。我知道,我可以使用 Run/Debug Configuration
添加命令行参数。但是,我觉得这样比较麻烦,因为我每次要修改参数都必须打开菜单。此外,将文件指定为参数时没有文件名补全。
我更喜欢从我最喜欢的 shell 调用 myscript.py
,我在其中有文件名完成等,但仍然在该脚本上使用 PyCharm
调试器。
最佳答案
简答:Tools> Attach to Process...
长答案:
在您的代码的最前面添加一行
input("press Enter to continue")
在 shell 中启动您的代码
myscript.py --input1 ./dir/file1.txt --input2 ./dir/file2.txt
打开 Pycharm 并使用它打开您的
myscript.py
。在任何你想调试的地方设置断点
。选择Tools> Attach to Process...
并选择myscript.py
正在运行的进程。回到
myscript.py
的 shell 并按下Enter
你可能会遇到的麻烦:ptrace
没有做某事的权限
解决方案:
sudo su
echo 0 > /proc/sys/kernel/yama/ptrace_scope
或者你可以直接设置0
/etc/sysctl.d/10-ptrace.conf
关于python - 如何使用 PyCharm 从命令行调试 python 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34677857/