我需要遍历.asm
给定目录内的所有文件并对它们执行一些操作。
如何有效地做到这一点?
原始答案:
import os
for filename in os.listdir(directory):
if filename.endswith(".asm") or filename.endswith(".py"):
# print(os.path.join(directory, filename))
continue
else:
continue
上面答案的Python 3.6版本,使用os
-假设你将目录路径作为str对象包含在名为的变量中directory_in_str
:
import os
directory = os.fsencode(directory_in_str)
for file in os.listdir(directory):
filename = os.fsdecode(file)
if filename.endswith(".asm") or filename.endswith(".py"):
# print(os.path.join(directory, filename))
continue
else:
continue
或递归地使用pathlib
:
from pathlib import Path
pathlist = Path(directory_in_str).glob('**/*.asm')
for path in pathlist:
# because path is object not string
path_in_str = str(path)
# print(path_in_str)
问题内容: 我有一个目录日志文件。我想使用Python脚本处理此目录中的每个文件。 我该怎么做呢? 问题答案: 使用或,取决于您是否要递归执行。
问题内容: 我需要获取目录中所有文件的列表,包括所有子目录中的文件。用Java完成目录迭代的标准方法是什么? 问题答案: 你可以用来测试给定的文件(路径)是否为目录。如果是true,则只需再次调用同一个方法及其结果即可。这称为递归。 这是一个基本的启动示例。 请注意,这对树的深度超过JVM堆栈可以容纳的深度很敏感。你可能要使用迭代方法或尾递归,但这是另一个主题;)
本文向大家介绍python遍历文件夹,指定遍历深度与忽略目录的方法,包括了python遍历文件夹,指定遍历深度与忽略目录的方法的使用技巧和注意事项,需要的朋友参考一下 背景 需要在文件夹中搜索某一文件,找到后返回此文件所在目录。用最常规的os.listdir()方式实现了一版,但执行时报错:递归超过最大深度。于是自己添加了点功能,之所有写此函数是为了让它适应不同的项目,因为有项目要找的文件在第一层
问题内容: 我在Linux上用bash编写脚本,需要遍历给定目录中的所有子目录名称。如何遍历这些目录(并跳过常规文件)? 例如: 给定目录是 它具有以下子目录: 我想检索A,B,C。 问题答案: 简短说明: 查找文件(很明显) 是当前目录,它位于is之后(恕我直言,它比直接包含在命令中更为灵活。如果要在此文件夹中执行更多操作,则只有一个位置可以更改,)。 并确保仅在当前目录中查找,并且不将自身包含
问题内容: 我想使用Java处理某个目录中的每个文件。 最简单(也是最常见)的方法是什么? 问题答案: 如果目录名称位于中,
我需要在网络驱动器上遍历一个目录,并在层次结构中创建子级到父级的映射。一个代表目录是6个Terrabytes,有90万个文件和900个文件夹。我只关心文件夹而不是文件。出于测试目的,我将没有文件的文件夹复制到另一个网络驱动器,并在复制的版本上运行代码。仅仅是在900个文件夹上迭代可能需要10秒。但是,迭代原始目录结构需要30分钟。我们似乎正在遍历所有90万个文件,尽管我们只是忽略它们。 有没有一种