Python 在ftp上列出文件名,前面不带meta

Python 在ftp上列出文件名,前面不带meta,python,Python,我正在尝试获取ftp目录中的文件名列表。我尝试了以下方法: import ftplib from os import listdir from os.path import isfile, join class FtpObj: def __init__(self, host, user, password): self.ftp = ftplib.FTP(host) self.ftp.login(user=user, passwd=password)

我正在尝试获取ftp目录中的文件名列表。我尝试了以下方法:

import ftplib
from os import listdir
from os.path import isfile, join

class FtpObj:
    def __init__(self, host, user, password):
        self.ftp = ftplib.FTP(host)
        self.ftp.login(user=user, passwd=password)

    def list_files(self):
        files = []
        self.ftp.dir(files.append)

        print('Found ' + str(len(files)) + 'Files')
        return files
但是,这会返回一个格式奇怪的文件名列表,格式如下:

total 71708
-rw-rw-rw- 1   gpatwprd        tmwdprd 4799    Nov 30 05:43 20181129.Name A with Space.CSV
-rw-rw-rw- 1   gpatwprd        tmwdprd 290     Nov 30 05:09 20181129.name D with Space.CSV
第一部分
-rw rw-1 gpatwprd tmwdprd 4799 11月30日05:43
和第一行
总计71708
都是元数据和冗余数据

我怎样才能只得到原始文件名而不需要所有这些凌乱的文本


这与
原因:因为我正在寻找一种更干净的方法来提取文件名。在另一个问题中,它是关于拥有一个字符串列表,然后解析这些字符串的一部分。完全无关。请先阅读我的问题,然后再将其标记为可能的副本,我注意到这种情况经常发生。

您可以使用ftplib.FTP的此功能获取文件名列表:

files = ftp.nlst()

可能重复的否,它不是重复。我明确地问你如何在没有元数据的情况下获取文件名。你在另一个问题中已经有了答案。没有,因为在另一个问题中,它的解析字符串在一个列表中。在这里,我希望避免解析字符串,直接从目录列表中获取文件名,而目录列表应该更干净。