当前位置:  开发笔记 > 编程语言 > 正文

确定列表是否是Python上的目录或文件

如何解决《确定列表是否是Python上的目录或文件》经验,为你挑选了1个好方法。

Python有一个标准的库模块ftplib来运行FTP通信.它有两种获取目录内容列表的方法.一,FTP.nlst()将返回给定目录名作为参数的目录内容列表.(如果给定文件名,它将返回文件的名称.)这是一种列出目录内容的可靠方法,但不会指示列表中的每个项目是文件还是目录.另一种方法是FTP.dir(),它给出了作为参数给出的目录的目录内容的字符串格式列表(或给定文件名的文件属性).

根据之前关于Stack Overflow的问题,解析结果dir()可能很脆弱(不同的服务器可能会返回不同的字符串).我正在寻找一些方法来列出通过FTP在另一个目录中包含的目录.据我所知,d在字符串的权限部分中抓取一个是我提出的唯一解决方案,但我想我无法保证权限将出现在不同服务器之间的同一位置.是否有更强大的解决方案来识别FTP上的目录?



1> Christian Wi..:

不幸的是,FTP没有命令只列出文件夹,所以解析你从ftp.dir()获得的结果将是"最好的".

一个简单的应用程序假设ls的标准结果(不是Windows ftp)

from ftplib import FTP

ftp = FTP(host, user, passwd)
for r in ftp.dir():
    if r.upper().startswith('D'):
        print r[58:]  # Starting point

标准FTP命令

自定义FTP命令

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有