Python - список каталогов
Python можно использовать для получения списка содержимого из каталога. Мы можем заставить программу отображать содержимое каталога, который находится на том же компьютере, где запущен python. Мы также можем войти в удаленную систему и просмотреть содержимое удаленного каталога.
Список локального каталога
В приведенном ниже примере мы используем метод listdir () для получения содержимого текущего каталога. Чтобы также указать тип содержимого, например, файл или каталог, мы используем дополнительные функции для оценки характера содержимого.
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
Когда мы запускаем указанную выше программу, мы получаем следующий результат -
file: abcl.htm
dir: allbooks
link: ulink
Обратите внимание, что приведенное выше содержимое относится к системе, в которой была запущена программа python. Результат будет зависеть от системы и ее содержимого.
Вывод удаленного каталога
Мы можем просмотреть содержимое удаленного каталога, используя ftp для доступа к удаленной системе. Как только соединение установлено, мы можем использовать команды, которые будут отображать содержимое каталога аналогично списку локальных каталогов.
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()
Когда мы запускаем указанную выше программу, мы получаем следующий результат -
(6, 'entries:')
INDEX
README
acedb
dna-mutations
ecology+evolution
molbio