繁体   English   中英

os.listdir()给出了不正确的文件列表

[英]os.listdir() gives a list of files not correct

我遇到这个奇怪的问题。 我必须获取文件夹中所有文件的列表,但是os.listdir()的结果为我提供了一个列表,该列表的长度不同于该文件夹中文件的确切数量。 我还打印了此列表,以检查是否还需要其他东西,但不需要。

TRAINING_FILES = os.listdir(TRAINING_DATA)  # length = 7269
with open(LOG_DIR + 'output.txt', 'w') as f:
    for p in TRAINING_FILES: f.write(p + '\n')

在此日志文件中,我只有.bin文件,因此它可以正确处理内容。

在文件夹内,我用cmd + a提取了所有文件,然后拖动到外面以显示数字7268并且还使用ls | wc -l查看了终端ls | wc -l ls | wc -l ,我有7268文件。

有我不知道的东西吗?

我有一个向您建议的答案:可能是ls | wc -l ls | wc -l为您提供除以外的所有文件. ...DS_Store 但是python os.listdir(path)会为您提供除以外的所有文件. .. 因此,您丢失的文件只有.DS_Store

os.listdir(path)

返回一个列表,其中包含由path给出的目录中条目的名称。 该列表是任意顺序的。 它不包括特殊条目“。” 和“ ..”,即使它们存在于目录中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM