Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python脚本能否激活虚拟环境,然后在其中触发交互式pdb会话?_Python_Python 3.x_Pdb_Python Venv - Fatal编程技术网

Python脚本能否激活虚拟环境,然后在其中触发交互式pdb会话?

Python脚本能否激活虚拟环境,然后在其中触发交互式pdb会话?,python,python-3.x,pdb,python-venv,Python,Python 3.x,Pdb,Python Venv,在我的Linux机器上,我可以激活虚拟环境,并使用以下bash命令启动交互式调试会话- source ~/pytorch-3.7-env/bin/activate python -m pdb ~/python_project/testscript.py python脚本能实现同样的效果吗 当我试图在子shell中执行第一个命令时,source~/pytorch-3.7-env/bin/activate失败,可能是因为source是bash内置的- >>> os.system(

在我的Linux机器上,我可以激活虚拟环境,并使用以下bash命令启动交互式调试会话-

source ~/pytorch-3.7-env/bin/activate
python -m pdb ~/python_project/testscript.py
python脚本能实现同样的效果吗


当我试图在子shell中执行第一个命令时,
source~/pytorch-3.7-env/bin/activate
失败,可能是因为
source
是bash内置的-

>>> os.system("source pytorch-3.7-env/bin/activate")
sh: 1: source: not found
32512

有什么想法吗?

最好的方法是使用:

#! ~/pytorch-3.7-env/bin/python
在文件的顶部

或 您可以使用:来执行命令

import subprocess
subprocess.call(". .FULL_PATH/pytorch-3.7-env/bin/python")

最好的方法是使用:

#! ~/pytorch-3.7-env/bin/python
在文件的顶部

或 您可以使用:来执行命令

import subprocess
subprocess.call(". .FULL_PATH/pytorch-3.7-env/bin/python")

可以,但没有理由:您可以直接调用virtualenv的python(
~/pytorch-3.7-env/bin/python
),它将在正确的环境中执行。您不需要在非交互式环境中激活envs。

可以,但没有理由:您可以直接调用virtualenv的python(
~/pytorch-3.7-env/bin/python
),它将在正确的环境中执行。您不需要在非交互式环境中激活环境。

我收到一个错误
FileNotFoundError:[Errno 2]没有这样的文件或目录:“source”:“source”
source~/pytorch-3.7-env/bin/activate更改了一些环境变量。如果我们跳过这一步,它会影响交互式pdb会话吗?我收到一个错误
FileNotFoundError:[Errno 2]没有这样的文件或目录:'source':'source'
source~/pytorch-3.7-env/bin/activate
更改了一些环境变量。如果跳过此步骤,是否会影响交互式pdb会话?