Python os.listdir()未打印出所有文件

Python os.listdir()未打印出所有文件,python,file,directory,listdir,Python,File,Directory,Listdir,我有一堆文件和一些文件夹。我试图将ZIP附加到一个列表中,以便在代码的其他部分提取这些文件。它永远找不到拉链 对于os.listdirpath中的文件: 打印文件 如果file.split.[1]=“zip”: reg_zips.appendfile 路径很好,否则不会打印任何内容。它每次都会拾取相同的文件,但不会拾取任何其他文件。它会拾取目录中大约五分之一的文件 完全不知所措。我在代码中添加了time.sleep3,以确保文件可用性的一些奇怪的竞争条件不是问题所在。无法解决此问题。您的文件中可

我有一堆文件和一些文件夹。我试图将ZIP附加到一个列表中,以便在代码的其他部分提取这些文件。它永远找不到拉链

对于os.listdirpath中的文件: 打印文件 如果file.split.[1]=“zip”: reg_zips.appendfile 路径很好,否则不会打印任何内容。它每次都会拾取相同的文件,但不会拾取任何其他文件。它会拾取目录中大约五分之一的文件


完全不知所措。我在代码中添加了time.sleep3,以确保文件可用性的一些奇怪的竞争条件不是问题所在。无法解决此问题。

您的文件中可能有多个句点。尝试使用str.endswith:

另一个好主意谢谢Jean-François Fabre!是要使用的,它可以很好地处理扩展:

if os.path.splitext(file)[-1] == '.zip':
    ... 
是更好的解决方案,我建议使用以下功能:

import glob
reg_zips = glob.glob('*.zip')

您的文件中可能有多个句点。尝试使用str.endswith:

另一个好主意谢谢Jean-François Fabre!是要使用的,它可以很好地处理扩展:

if os.path.splitext(file)[-1] == '.zip':
    ... 
是更好的解决方案,我建议使用以下功能:

import glob
reg_zips = glob.glob('*.zip')

reg_zips=[z代表z在os.listdirpath中,如果z.endswithzip]

reg_zips=[z代表z在os.listdirpath中,如果z.endswithzip]

文件名是否有多个。也许在他们身上?文件.endswith'.zip'有效吗?谢谢。把它作为答案,我会记下来的。我会记为耗尽。文件名是否不止一个。也许在他们身上?文件.endswith'.zip'有效吗?谢谢。把它作为答案,我会记下来的。我将把它记为耗尽。或者使用os.path.splitext很好地处理最后一个点。或者使用os.path.splitext很好地处理最后一个点。请解释你的代码做什么和如何做。请解释你的代码做什么和如何做。