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