使用Visual Studio 2019在python中调试子进程

使用Visual Studio 2019在python中调试子进程,python,visual-studio-2019,Python,Visual Studio 2019,我有一个名为main.py的脚本,它利用subprocess来调用名为的脚本名为.py: main.py from subprocess import Popen, PIPE, STDOUT import sys user_input = ['John', '555'] communicate_argument = '\n'.join(user_input) p = Popen([sys.executable, 'called.py'], stdout=PIPE, stdin=PIPE, s

我有一个名为
main.py
的脚本,它利用
subprocess
来调用名为
的脚本名为.py

main.py

from subprocess import Popen, PIPE, STDOUT
import sys

user_input = ['John', '555']

communicate_argument = '\n'.join(user_input)
p = Popen([sys.executable, 'called.py'], stdout=PIPE, stdin=PIPE, stderr=STDOUT, encoding='utf-8')

stdout, stderr = p.communicate(communicate_argument)

print(stdout)
name = input('What is your name\n')
age = input('What is your age\n')

print('You are {}, and you are {} years old'.format(name, age))
调用.py

from subprocess import Popen, PIPE, STDOUT
import sys

user_input = ['John', '555']

communicate_argument = '\n'.join(user_input)
p = Popen([sys.executable, 'called.py'], stdout=PIPE, stdin=PIPE, stderr=STDOUT, encoding='utf-8')

stdout, stderr = p.communicate(communicate_argument)

print(stdout)
name = input('What is your name\n')
age = input('What is your age\n')

print('You are {}, and you are {} years old'.format(name, age))
我想调用
main
,但在VS2019中调试
调用了
。我制定了一个解决方案,并成功地运行和调试了
main.py

但是,如果我在名为.py的
中放置一个断点,调试器将不会停止,而是执行程序直到完成


如果调用的.py是从
main.py
运行的,如何成功调试它?

有任何特殊原因,您没有将其作为模块导入?是的。实际上,名为
是一个大型的、设计糟糕的第三方程序,我需要在重构之前对其进行测试。在我能够测试它的所有功能之前,我不想改变它接受用户输入的事实。。。