列出目录并查找是否以“.mp4”结尾的文件名

Lev*_*evi 1 python

原问题:

a = [1, 2, 3, 4, 5, 6, 4]

print [True for i in a if i == 4]
Run Code Online (Sandbox Code Playgroud)

结果:

[True, True]
Run Code Online (Sandbox Code Playgroud)

我如何编码以打破第一个数字 4?

以下评论,编辑为:

我确实想列出一个包含这么多文件的目录。并查找文件是否以“.mp4”结尾。

cda*_*rke 10

您的评论:“我确实想列出一个包含这么多文件的目录。并查找文件是否以“.mp4”结尾

这与您发布的原始问题有很大不同。做这件事有很多种方法:

import glob
import os.path

dir = '.'
files = glob.glob(os.path.join(dir, '*.mp4'))
print files
Run Code Online (Sandbox Code Playgroud)

这样做的好处glob是您只捕获您实际需要的文件名,从而节省内存。

但既然你明确要求listdir()

import os
dir = '.'
allfiles = os.listdir(dir)
files = [ fname for fname in allfiles if fname.endswith('.mp4')]
print files
Run Code Online (Sandbox Code Playgroud)