Python'un harici dosyalara bağımlılığı çok önemli bir husustur, herhangi bir kodu çalıştırmadan önce temel/kaynak dosyalara dikkat etmek akıllıca olacaktır. Belirli bir programı çalıştırmadan önce, kaynak dosyalarınızın belirtilen konumda bulunduğundan emin olmanız gerekir.
Her geliştirici, bir koşulun karşılanmaması durumunda bir programın başarısız olmasını önleyebilecek geri dönüş kodları oluşturma ihtiyacını anlar. Python'da bir dosyanın var olup olmadığını kontrol etmenin birkaç yolu vardır; İşte bilmeniz gereken en iyi yöntemler.
1. Dene ve Hariç İfadeleri
NS deneyin ve istisna ifadesi bir komutu kontrol eder ve bir çıktı üretir. Aşağıdaki kodda, denemek ifadesi bir dosyayı açmaya çalışacak (test dosyası.txt). Python'un işlemcisi dosyayı bulabilirse, dosyayı açar ve sonucu yazdırır. Dosya açık ve kullanıma hazır.
denemek:
f = open('testfile.txt')
print("Dosya kullanıma hazır")
f.kapat()
IOError hariç:
print('Dosyaya erişilemiyor')
Bir hatayla karşılaşırsa sonucu yazdırır Dosyaya erişilemiyor. Tam kod derlenip yürütüldüğünde, açılmışsa açık dosyayı kapatacaktır.
Python'un harici dosyalara bağımlılığı çok önemli bir husustur ve herhangi bir kodu çalıştırmadan önce temel/kaynak dosyalara dikkat etmeniz gerekir.
Belirli bir programı çalıştırmadan önce, kaynak dosyalarınızın belirli bir konumda bulunduğundan emin olun.
2. Os.path.isfile (yol)
Python, temel alınan dosyalar, klasörler ve dizinlerle etkileşime geçmek için çağrılabilecek yerleşik bir işletim sistemi modülüne sahiptir. Python'lar os.path.isfile() yöntemi, bir dizini ve belirli bir dosyanın olup olmadığını kontrol etmek için kullanılabilir.
İlk adım, yerleşik işlevi kullanarak içe aktarmaktır. os.path'i içe aktar kütüphane. Sonraki komut, dosyanın belirli bir konumda olup olmadığını kontrol eder.
os.path'i içe aktar
os.path.isfile (r"C:\Users\Wini Bhalla\Desktop\Python test dosyası.txt")
çıktı döner NS, dosya belirli bir konumda bulunduğundan. Dosya yoksa Python dönecektir. YANLIŞ.
3. Os.path.exists (yol)
Benzer gerekçelerle, işletim sistemini içe aktar kütüphane ifadesi, dizinin sisteminizde olup olmadığını kontrol etmek için kullanılabilir.
Sözdizimi oldukça basittir:
os.path'i içe aktar
os.path.exists (r"C:\Users\Wini Bhalla\Desktop\test")
Önceki adımda olduğu gibi, dizin/klasör belirtilen sistem yolunda bulunursa Python döner NSve ardından, YANLIŞ, dizin/klasör bulunamazsa.
İlgili: Python'u Öğrenmek? İşte Bir Dosyayı Nasıl Kopyalayacağınız
4. İşletim sistemi. Yol. Isdir (yol)
Tıpkı os.path.isfile ve os.path.exists(), os.path.isdir() os kitaplığının bir alt işlevidir. Buradaki tek fark, bu komutun yalnızca dizinler için çalışmasıdır. Beklendiği gibi, bu sözdiziminin kullanımı, dizinlerin varlığına dayalı bir boole değeri döndürür.
Örneğin:
işletim sistemini içe aktar
os.path.isdir (r"C:\Users\Wini Bhalla\Desktop\OS")
çıktı NS, klasör/dizin belirtilen yolda bulunduğundan.
işletim sistemini içe aktar
os.path.isdir (r"C:\Users\Wini Bhalla\Desktop\testdizini")
çıktı YANLIŞ, klasör/dizin belirtilen yolda bulunmadığından.
5. Pathlib.path.exists()
Python 3.4 ve üzeri sürümler şunları sunar: Pathlib kullanılarak içe aktarılabilen modül içe aktarmak işlev. Pathlib, gerekli işlevleri tek bir yerde yakalar ve çeşitli yöntemlerle yol nesnesiyle birlikte kullanılmasını sağlar.
Pathlib'i kullanmak için:
pathlib'i içe aktar
dosya = pathlib.dll Yol (r"C:\Users\Wini Bhalla\Desktop\Python test dosyası.txt")
eğer dosya.varsa ():
yazdır ("Dosya var")
Başka:
yazdır ("Dosya mevcut değil")
Dosyanın varlığına göre çıktı, dosyanın belirtilen yolda bulunup bulunmadığını gösterecektir. İdeal olarak, içindeki kod Yazdır ifade, programınızın gereksinimlerine göre değiştirilebilir
6. Os.listdir (yol)
NS listdir Python'daki method, kullanıcı tarafından belirtildiği gibi, belirli bir dizindeki tüm dosyaların bir listesini döndürür. Ancak bu yöntem, alt klasörlerde bulunan hiçbir dosyayı döndürmez.
NS listdir yöntem yalnızca bir parametreyi, dosya yolunu kabul eder. İdeal olarak, dosya yolu, almak istediğiniz dosya ve klasör adları olacaktır.
Temel sözdizimi şunları içerir:
os.listdir (yol)
Aşağıdaki örnekte, dizinde listelenen tüm dosyaları gözden geçirmek için bir döngü oluşturabilir ve ardından belirtilen dosyanın varlığını kontrol etmek için belirtilen dosyanın varlığını kontrol edebilirsiniz. Eğer Beyan.
işletim sistemini içe aktar
yol = r'C:\Kullanıcılar\Wini Bhalla\Masaüstü'
dosyalar = os.listdir (yol)
yazdır (dosyalar)
Bu kod, geçerli dizinde bulunan dosyaların listesini yazdıracaktır.
işletim sistemini içe aktar
yol = r'C:\Users\Wini Bhalla\Desktop' dosyaları = os.listdir (yol)
dosyalarda f için:
f == "test.txt" ise:
print("Dosya var")
Başka:
print("Dosya mevcut değil")
Ayrıca, döngü çalıştırıldığında, listdir ile birlikte işlev Eğer deyim mantığı, dosya listesinde dolaşacak ve içinde geçen koşullara bağlı olarak sonuçları yazdıracaktır. Yazdır Beyan.
İlgili: Python'da Listelerle Döngüler Kullanın
7. Küre Modülü
NS küre modül, belirtilen parametrelerle tüm yol adlarını eşleştirir ve kısaca dosya sistemine erişmenizi sağlar. Küre, kalıp eşleştirme için kullanıldığından, bir dosyanın durumunu kontrol etmek için kullanabilirsiniz.
Yolun iki referansı vardır:
- Kesin yol: Farklı bir dizinde bir dosya aramak istediğinizde bunu kullanın.
- Göreceli yol: Bunu kullandığınızda kullanın geçerli dizinde bir dosya aramak istiyorum.
Dosya bulunursa, kod dönecektir. NS, yoksa geri döner YANLIŞ.
Glob'un kullanımına bir örnek:
ithalat küresi
if glob.glob (r"C:\Users\Wini Bhalla\Desktop\test.txt"):
yazdır ("Dosya var")
Başka:
print("Dosya mevcut değil")
Dosya bulunursa, bu kodun çıktısı sonucu yazdıracaktır.
8. alt süreç
Alt süreç modülündeki test komutu, dosya ve dizinlerin varlığını test etmenin etkili bir yoludur. Test komutları, Windows tabanlı işletim sistemi makinelerinde değil, yalnızca Unix tabanlı makinelerde çalışır.
Aşağıdaki komutları ihtiyaçlarınıza göre kullanabilirsiniz:
- -e testi: Bir yolun varlığını kontrol edin
- -f testi: Bir dosyanın varlığını kontrol edin
- test-d: Bir klasörün varlığını kontrol edin
Alt İşlemli Bir Yolu Doğrulama:
alt işlem içe aktarma çalıştırmasından
run(['test', '-e', 'testfile.txt']).returncode == 0
run(['test', '-e', 'burada değilim.txt']).returncode == 0
Bu kod, test fonksiyonu olarak adlandırılır ve ardından '-e' Bir yolun varlığını doğrulamak için. fonksiyon gösterir YANLIŞ geçersiz bir yol için.
Alt İşlemli Bir Dosyayı Doğrulama:
run(['test', '-f', 'testfile.txt']).returncode == 0
run(['test', '-f', 'testdizini']).returncode == 0
NS '-F' işlev bir dosyanın varlığını test eder ve geri döner YANLIŞ bir dizin için.
Alt İşlemli Bir Dizini Doğrulama:
run(['test', '-d', 'testfile.txt']).returncode == 0
run(['test', '-d', 'testdizini']).returncode == 0
NS '-NS' işlev bir dizinin varlığını test eder ve döner YANLIŞ test komutundaki herhangi bir dosya sorgusu için.
Dosyalarınızı Bulmak İçin Hangi Komutu Kullanacaksınız?
Python nispeten kullanımı kolay bir dildir ve son kullanıcılara birçok seçenek sunar. Bir dosyanın/dosyaların varlığını kontrol etmek için yukarıda listelenen prosedürlerden herhangi birini kullanabilirsiniz.
Ancak yeni başlayan biriyseniz Python öğrenmenin her zaman bir yolu vardır. Python çok geniş bir dil olduğundan, farklı nüansları ve komut dizisini anlamak için biraz zaman harcamak en iyisidir.
Python, web geliştirmeden veri analizine kadar değişen uygulamalarla son derece çok yönlüdür.
Sonrakini Oku
- Programlama
- piton
- Kodlama İpuçları
Wini, 2 yıllık yazma deneyimine sahip Delhi merkezli bir yazardır. Yazma çalışmaları sırasında dijital pazarlama ajansları ve teknik firmalarla ilişkilendirildi. Programlama dilleri, bulut teknolojisi, AWS, Makine Öğrenimi ve çok daha fazlasıyla ilgili içerik yazmıştır. Boş zamanlarında resim yapmayı, ailesiyle vakit geçirmeyi ve fırsat buldukça dağlara seyahat etmeyi seviyor.
Haber bültenimize abone ol
Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!
Abone olmak için buraya tıklayın