2016-04-11 20 views
1

Bir exe dosyası (exe dosyası, bir python programından derlenen C++ projesinin çıktısıdır) çalıştırmaya çalışıyorum. Bu C++ projesi (yapılandırma -> özellikleri-> debugging-> ortam) özelliklerindePython betiğinde PATH =% PATH% öğesini ortam olarak nasıl ayarlanır?

 (PATH = %PATH%;lib\testfolder1;lib\testfolder2) 

aşağıdaki ayar verilir.
=% PATH

  1. PATH yolu ortam değişkeni ayarlamak için herhangi bir yolu yoktur%
  2. lib \ testfolder1
  3. lib \ testfolder2 bir piton programında

? senin replay için şimdiden

Teşekkür

+0

Yol edilir (Bir sonraki programa kadar) birkaç program veya kütüphanenin erişim yolları. Yol değişikliği yalnızca programınızın çalışma zamanı için gerekliyse, orijinal yolun bir kopyasını daha iyi kaydedin ve ardından ** ek olarak ** değiştirin, böylece programdan çıkmadan önce orijinal değerine ayarlanabilir. % PATH%, yol değişkeninin kendisini eklemek için os düzeyindeki bir yol olan yol değişkeninin kendisi anlamına gelir. Gibi: Yol C: \; C: \ d1 ise, YOL =% PATH%; C: \ d2, PATH = C: \; C: \ d1; C: \ d2 – Ihsan

+1

yazarak aynıdır, teşekkürler Lhsan detaylı açıklama. Daha önce% PATH% yanlış anladım. şimdi çalışıyor – sasi

+1

Çalıştırmaya başlıyorsanız, 'subprocess.Popen' veya 'subprocess.check_output' gibi üst düzey işlevlerden birini kullanın ve değiştirilmiş bir ortamı değiştirmek için "env" seçeneğini kullanın. çocuk. Örneğin: 'environ = os.environ.copy();' 'environ ['PATH'] + = os.pathsep + os.pathsep.join ([r'lib \ testfolder1 ', r'lib \ testfolder2']) ; '' p = subprocess.Popen ([exepath, arg1, arg2, ...], env = ortam). – eryksun

cevap

1

Birkaç yöntemlerle PATH güncelleyebilirsiniz: geçici olarak zarar verebilir değişen bir işletim sistemi ortamı değişkeni

import sys 
sys.path += ["c:\\new\\path"] 
print sys.path 

veya

import os 
os.environ["PATH"] += os.pathsep + os.pathsep.join(["c:\\new\\path"]) 
print os.environ["PATH"] 
İlgili konular