[英]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
返回一个列表,其中包含由path给出的目录中条目的名称。 该列表是任意顺序的。 它不包括特殊条目“。” 和“ ..”,即使它们存在于目录中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.