2016-05-10 35 views
6

Python subprocess.popen'dan harici bir yürütülebilir dosya (Rscript.exeR portable'un parçası olarak) arayın.Python popen kullanarak garip bitness sorunları

  • 32 bit python denir, çalışır.

  • 64 bit python denilen R, çeşitli paketler bulamadığı için şikayet ediyor, bu yüzden bir şey farklı.

Bu piton sorunu, bir R sorunu, ya da her ikisi olabilir

(Rscript.exe yolu program dosyaları değil) oluyor herhangi bir dosya sistemi yeniden yönlendirme olmamalıdır. Neden bir şey popen denen sürecin bitkinliğine bağlı olarak farklı davranıyor? Rscript'in perspektifinden 32 bitlik bir aramaya bakmak için 64 bitlik bir python çağrısını zorlayabilir miyim?

+4

çözülecek? – wholevinski

+1

Bu pencerelerdeki mi? neden R64 kullanmıyorsunuz? – rll

+4

Lütfen iki adet pitonun çağrıları için PATH, geçerli dizini ve kütüphane yollarını kontrol edin. – mdurant

cevap

0

Alt program veya alt iş parçacıkları için alt sınıfı kullandığınızda, alt program veya iş parçacığı için bir sınıf oluşturur, bunun için bir kabuk oluşturur veya komut istemini altprocess.Popen sınıfına dönüştürür. Bu komut kabukta çalışır ve idam edilir. Yani gelen hata ne bir python sorunu ne de bir R sorunu. Sorun, ortam değişkenleriniz ve sistem yolunuz var. R için ortam yolunu kaydetmemiş olabilirsiniz, bu nedenle yürütme için Rscript.exe'yi alamıyorsunuz. Ve dosya/dizin yönlendirme sistemi doğrudan yürütme için klasörleri/dosyaları aramak için mevcut değildir.

Ar için sistem yolu değişkeni ayarlayın ve sorunun umarım kodu ve hata mesajlarını lütfen gönderebilir miyim