使用Python在同一目录中查找相同类型的文件
是否有一种方法可以找到指定的特定文件类型的所有文件,并递归调用它们以进行读取,直到您读取了所有文件?(这是在Ubuntu中) 例如: 在目录使用Python在同一目录中查找相同类型的文件,python,Python,是否有一种方法可以找到指定的特定文件类型的所有文件,并递归调用它们以进行读取,直到您读取了所有文件?(这是在Ubuntu中) 例如: 在目录/home中有文件a.png,b.txt,c.txt,d.txt,e.jpeg 我想阅读所有的txt文件 在Python中如何做到这一点 子问题:是否可以使用两种不同的文件类型执行上述操作?您可以使用以下方法: >>> from glob import glob >>> glob('/home/*.txt') ['/ho
/home
中有文件a.png
,b.txt
,c.txt
,d.txt
,e.jpeg
我想阅读所有的txt
文件
在Python中如何做到这一点
子问题:是否可以使用两种不同的文件类型执行上述操作?您可以使用以下方法:
>>> from glob import glob
>>> glob('/home/*.txt')
['/home/c.txt', '/home/d.txt', '/home/b.txt']
>>> [glob(i) for i in ['/home/*.txt', '/home/*.jpeg']]
[['/home/c.txt', '/home/d.txt', '/home/b.txt'], ['/home/e.jpeg']]
>>>
您可以使用以下方法执行此操作:
>>> from glob import glob
>>> glob('/home/*.txt')
['/home/c.txt', '/home/d.txt', '/home/b.txt']
>>> [glob(i) for i in ['/home/*.txt', '/home/*.jpeg']]
[['/home/c.txt', '/home/d.txt', '/home/b.txt'], ['/home/e.jpeg']]
>>>
假设您正在使用文件扩展名猜测类型,则可以根据文件名使用并过滤文件:
import os
for filename in os.listdir('.'):
if filename.endswith('.txt'):
# Do what you want to do
假设您正在使用文件扩展名猜测类型,则可以根据文件名使用并过滤文件:
import os
for filename in os.listdir('.'):
if filename.endswith('.txt'):
# Do what you want to do
我真的怀疑你是否会在这方面使用所有这些语言,所以听起来这个问题太宽泛了。@Nathantugy:不,因为OP说他只想使用Python,所以我删除了这些标记。听起来像
os.walk
适合你。写一些代码,看看它是如何运行的。我真的怀疑你是否会在这方面使用所有这些语言,所以这个问题听起来太宽泛了。@Nathantugy:不,因为OP说他只想使用Python,所以我删除了这些标记。听起来像os.walk
适合你。编写一些代码,看看它是如何运行的。请参阅