Nasıl python bir programı çalıştırmak mı? os.sistem yolunda boşluk nedeniyle başarısız | Netgez.com
SORU
15 EKİM 2008, ÇARŞAMBA


Nasıl python bir programı çalıştırmak mı? os.sistem yolunda boşluk nedeniyle başarısız

Dış programı çalıştırmak için gereken, ama nedense başarısız için bir python komut dosyası var.

Eğer aşağıdaki kodu var:

import os;
os.system("C:\\Temp\\a b c\\Notepad.exe");
raw_input();

Sonra aşağıdaki hata ile başarısız:

'C:\Temp\a' is not recognized as an internal or external command, operable program or batch file.

Ben tırnak ile program kaçış:

import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe"');
raw_input();

Çalışır o zaman. Eğer bir parametre eklerseniz ancak, yine çalışmamaya başlıyor:

import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe" "C:\\test.txt"');
raw_input();

Bir programı çalıştırmak ve bunu tamamlamak için beklemek için doğru yolu nedir? Buradan çıkış okumama gerek olmayan bir iş ve sonra çıkar huyu bu görsel bir program olduğundan, ama bunun için beklemek lazım.

Ayrıca not, olmayan aralıklı yolu bir program hareketli bir seçenek değil.

< / ^ hr .

EditBu da iÅŸe yaramazsa:

import os;
os.system("'C:\\Temp\\a b c\\Notepad.exe'");
raw_input();

Takas tek/çift tırnak unutmayın.

ya da burada not defteri için bir parametre olmadan, bir hata iletisi ile başarısız olur

The filename, directory name, or volume label syntax is incorrect.

CEVAP
15 EKİM 2008, ÇARŞAMBA


subprocess.call çeşitli kabukları sözleşmeler Alıntı ile uğraşmak zorunda sorunları önlemek olacaktır. Bir liste yerine bir dize kabul eder, tartışmalar daha kolay ayrılmış. yani

import subprocess
subprocess.call(['C:\\Temp\\a b c\\Notepad.exe', 'C:\\test.txt'])

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • LAHWF

    LAHWF

    5 Kasım 2009
  • Rozetked | Обзоры

    Rozetked | Ð

    5 AÄžUSTOS 2011