Python - Dizin Listeleme

Python, bir dizinden içerik listesini almak için kullanılabilir. Python'un çalıştığı aynı makinede bulunan dizinin içeriğini listeleyen bir program yapabiliriz. Ayrıca uzak sistemde oturum açabilir ve uzak dizindeki içeriği listeleyebiliriz.

Yerel Dizini Listeleme

Aşağıdaki örnekte, mevcut dizinin içeriğini almak için listdir () yöntemini kullanıyoruz. Dosya veya dizin gibi içeriğin türünü de belirtmek için, içeriğin doğasını değerlendirmek için daha fazla işlev kullanırız.

for  name in os.listdir('.'):
    if os.path.isfile(name): print 'file: ', name
    elif os.path.isdir(name): print 'dir: ', name
    elif os.path.islink(name): print 'link: ', name
    else: print 'unknown', name

Yukarıdaki programı çalıştırdığımızda aşağıdaki çıktıyı alıyoruz -

file: abcl.htm
dir: allbooks
link: ulink

Lütfen yukarıdaki içeriğin python programının çalıştırıldığı sisteme özgü olduğunu unutmayın. Sonuç, sisteme ve içeriğine bağlı olarak değişecektir.

Uzak Dizini Listeleme

Uzak dizinin içeriğini uzak sisteme erişmek için ftp kullanarak listeleyebiliriz. Bağlantı kurulduktan sonra, dizin içeriğini yerel dizinlerin listelemesine benzer bir şekilde listeleyen komutları kullanabiliriz.

from ftplib import FTP
def main():
    ftp = FTP('ftp.ibiblio.org')
    ftp.login()
    ftp.cwd('pub/academic/biology/') # change to some other subject
    entries = ftp.nlst()
    ftp.quit()
    print(len(entries), "entries:")
    for entry in sorted(entries):
        print(entry)
if __name__ == '__main__':
    main()

Yukarıdaki programı çalıştırdığımızda aşağıdaki çıktıyı alıyoruz -

(6, 'entries:')
INDEX
README
acedb
dna-mutations
ecology+evolution
molbio