为了简化,下面是调试失败的代码。有两个问题:
下面是运行的示例配置:
{
"name": "Python: filetest.py",
"type": "python",
"request": "launch",
"program":
"${workspaceFolder}/filetest.py",
"args": [
"./samples/blja2.wav"
],
"console": "integratedTerminal"
}发布于 2022-03-03 22:49:02
import argparse
def argparse_sample():
parser = argparse.ArgumentParser()
parser.add_argument('sample_args', type=argparse.FileType('r'))
args = parser.parse_args()
print("File Content: ", args.sample_args.readlines())
if __name__ == '__main__':
argparse_sample()因此,如果没有调试模式: Output:
$ python main.py sample_args.txt
Filename: [' {\n', ' "name": "Python: filetest.py",\n', ' "type": "python",\n', '
"request": "launch",\n', ' "program": \n', ' "${workspaceFolder}/filetest.py",\n', '
"args": [\n', ' "./samples/blja2.wav"\n', ' ],\n', ' "console": "integratedTermina
l"\n', ' }']在PyCharm:PyCharm调试设置中使用调试模式
输出:
C:\projects\StackOverFlow\venv\Scripts\python.exe C:/projects/StackOverFlow/main.py sample_args.txt
Filename: [' {\n', ' "name": "Python: filetest.py",\n', ' "type": "python",\n', ' "request": "launch",\n', ' "program": \n', ' "${workspaceFolder}/filetest.py",\n', ' "args": [\n', ' "./samples/blja2.wav"\n', ' ],\n', ' "console": "integratedTerminal"\n', ' }']
Process finished with exit code 0Visual代码调试器设置(launch.json):
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{ "args": ["sample_args.txt"],
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
]
}输出:
PS C:\projects\StackOverFlow> c:; cd 'c:\projects\StackOverFlow'; & 'C:\Python38\python.exe' 'c:\Users\alist\.vscode\extensions\ms-python.python-2021.8.1159798656\pythonFiles\lib\python\debugpy\launcher' '49710' '--' 'c:\projects\StackOverFlow\main.py' 'sample_args.txt'
Filename: [' {\n', ' "name": "Python: filetest.py",\n', ' "type": "python",\n', ' "request": "launch",\n', ' "program": \n', ' "${workspaceFolder}/filetest.py",\n', ' "args": [\n', ' "./samples/blja2.wav"\n', ' ],\n', ' "console": "integratedTerminal"\n', ' }']https://stackoverflow.com/questions/71344423
复制相似问题