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

  • case LianLi

    case LianLi

    28 Mayıs 2010
  • LiveForGodsKingdom

    LiveForGodsK

    6 NİSAN 2008
  • LounaTutorials

    LounaTutoria

    10 EYLÜL 2009