SORU
18 Aralık 2008, PERŞEMBE


Eğer çalıştırılabilir Python varsa Test?

Python, eğer çalıştırılabilir bir program varsa test etmek için taşınabilir ve basit bir yolu var mı?

Basit 'which' sadece mükemmel olan komut. gibi bir şey yani İstemiyorum arama YOLU elle falan karıştığı çalışıyor yürütmek Popen & al ve eğer başarısız (o an yapıyorum, ama hayal launchmissiles)

CEVAP
18 Aralık 2008, PERŞEMBE


En kolay aklıma şekilde

def which(program):
    import os
    def is_exe(fpath):
        return os.path.isfile(fpath) and os.access(fpath, os.X_OK)

    fpath, fname = os.path.split(program)
    if fpath:
        if is_exe(program):
            return program
    else:
        for path in os.environ["PATH"].split(os.pathsep):
            path = path.strip('"')
            exe_file = os.path.join(path, program)
            if is_exe(exe_file):
                return exe_file

    return None

Edit: Verilen argüman zaten çalıştırılabilir dosyanın tam yolunu olduğu durumda taşıma mantık eklemek için kod örneği güncellenmiş, yani "/bin/ls". Bu UNIX davranışını taklit' komutu."

EditKullanın : işletim sistemi güncellenmiş.yol.() isfile os yerine.yol.() var yorum başına.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Britec09

    Britec09

    4 Mart 2009
  • CasinoRoyaleMovie's channel

    CasinoRoyale

    1 AĞUSTOS 2006
  • GoldgenieOfficial

    GoldgenieOff

    23 Temmuz 2009