Maison > Questions et réponses > le corps du texte
我想要在 python 里开启virtualenv,然后运行一些命令,该怎么做呢?
import subprocess
p = subprocess.Popen(['source /Users/XX/Desktop/mio/worker/venv/bin/activate'],shell=True)
print p.stderr
import pika
输出如下:
None
Traceback (most recent call last):
File "/Users/Ru/Desktop/mio/worker/run.py", line 6, in <module>
import pika
ImportError: No module named pika
另外,我想在python内打开一个终端运行a.py,另外再打开另一个终端运行b.py。该怎么做呢?
看了subprocess和EasyProcess模块,都没有得到答案,可能我看得不够深。小白一个,希望得到解答,谢谢。
天蓬老师2017-04-18 09:09:11
Popen créera un processus enfant et source /Users/XX/Desktop/mio/worker/venv/bin/activate ajoutera des variables d'environnement. Ces variables d'environnement ne sont valides que dans le processus enfant et n'affecteront pas le parent. processus.
Exécutez généralement la commande suivante dans le shell, puis exécutez-la avec python :
#> source /Users/XX/Desktop/mio/worker/venv/bin/activate
#> python a.py
PHP中文网2017-04-18 09:09:11
À propos de la façon d'exécuter d'autres scripts Python dans le script :
python2 peut utiliser le fichier exécutable
python3 peut utiliser exec
execfile
:
# a.py
def test(x):
return x
print(test(a))
Exécuter via exe.py
:
# exe.py
execfile('a.py', {'a':5})
Questions auxquelles j'ai répondu : Python-QA