SORU
19 AĞUSTOS 2011, Cuma


____ Mutlak ya da göreli dosya özniteliği Python?

Sorun __file__ anlamakta güçlük çekiyorum. , __file__ döner modül yüklendi mutlak yol anladığım kadarıyla.

Bu üretim sorunu yaşıyorum: bir beyanı print __file__, * python abc.py *4 çalışan abc.py verir. abc.py bir ben var /d/ çalışan döner projects/abc.py. Neden herhangi bir sebep?

CEVAP
19 AĞUSTOS 2011, Cuma


__file__ Bu modül, eğer bir dosya yüklü ise yüklü idi dosyanın yoluna. __file__ öznitelik statik olarak yorumlayıcısı bağlı C modülleri için mevcut değil, ek modül paylaşılan bir kütüphane dinamik olarak yüklenen, paylaşılan kitaplık dosyasının yol adını alır.

mailing list thread @soru için bir yorum kindall ile bağlantılı:

Bu belirli bir örnek yeniden oluşturma için denemedim, ama sebebi getpwd aramak istemiyoruz() her ithalat ne de biz işlem önbellek değişkeni için geçerli bir tür istiyorum dizin. (() getpwd nispeten yavaş ve bazen başarısız olabilir düpedüz, ve önbellek için çalışıyor yanlışmış gibi belli bir risk vardır.)

Biz bunun yerine, öğeleri üzerinde yürüyen site.py kod. sys.yol ve mutlak yol haline getirir. Ancak bu kod çalışır "sys önüne eklenir.önce yol, bu ilk yani sys değer.yoludur ".

Bu geri kalanı için, sys.path '' dahil değil düşünün.

Eğer modülü içeren sys.path parçası içinde değilse, bir alırsınızmutlak yol. Eğer modülü içeren sys.path parçası içinde, bir alırsınızgöreli yol.

Geçerli dizinde bir modül ve geçerli dizin yükdeğilsys.path, mutlak bir yolunu bulursun.

Geçerli dizinde bir modül ve geçerli dizin yüksys.path, göreli bir yol alırsınız.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • magnum33563

    magnum33563

    8 NİSAN 2011
  • ThePointblank

    ThePointblan

    18 Aralık 2006
  • UberFacts

    UberFacts

    26 EKİM 2013