当前位置: 首页 > 面试题库 >

在Python中寻找类似于Java的文件遍历函数

柏阳炎
2023-03-14
问题内容

在Java中,您可以执行File.listFiles()和接收目录中的所有文件。然后,您可以轻松地通过目录树进行递归。

在Python中有类似的方法吗?


问题答案:

就在这里。Python方式更好。

有三种可能性:

1)像File.listFiles()一样:

Python具有函数os.listdir(path)。它的工作方式类似于Java方法。

2)使用glob扩展路径名模式:

模块glob包含使用Unix shell(例如模式)在文件系统上列出文件的功能,例如 ``

files = glob.glob('/usr/joe/*.gif')

3)遍历文件遍历:

Python的os.walk函数确实很棒。

walk方法返回一个生成函数,该函数递归列出给定起始路径下的所有目录和文件。

一个例子: ``

import os
from os.path import join
for root, dirs, files in os.walk('/usr'):
   print "Current directory", root
   print "Sub directories", dirs
   print "Files", files

您甚至可以随时从“目录”中删除目录以避免进入该目录:如果dirs中的“ joe”为:dirs.remove(“ joe”)避免进入名为“ joe”的目录。

listdir和walk在此处记录。glob记录在这里。



 类似资料:
  • 问题内容: 我有一个带有一些十六进制数字的文本文件,我正在尝试将其转换为十进制。我可以成功转换它,但似乎在循环存在之前它会读取一些不需要的字符,因此我遇到了以下错误。 我的代码如下 每个十六进制数字都在新行中输入 问题答案: 追溯表明文件末尾可能有一个空行。您可以这样解决: 另一方面,最好使用代替。不要忘记关闭文件,或者更好地使用该文件来关闭它们:

  • 问题内容: 给定以下格式( .properties 或 .ini ): 对于 Java ,提供了Properties类,该类提供了用于解析上述格式或与其进行交互的功能。 python 的 标准 库(2.x)中有类似的东西吗? 如果没有,我还有什么其他选择? 问题答案: 对于.ini文件,有一个ConfigParser模块,它提供与.ini文件兼容的格式。 无论如何,没有任何可用于解析完整的.pro

  • 问题内容: 这是在本地处理程序的上下文中。我想运行一个外部程序来获取一些数据。我可以使用popen()或等效函数吗? 问题答案: 然后,您可以使用流读取和写入数据。

  • 我试图做一个Python代码,遍历父文件夹中的所有子文件夹,并将子文件夹内容移动到父文件夹。我在python中使用os.walk函数,但它也一直选择父文件夹中的文件。有没有办法解决这个问题...

  • 问题内容: 这个问题已经在这里有了答案 : 第二次遍历文件不起作用 (4个答案) 去年关闭。 我有一个文件,其中某些名称逐行列出。 现在,我试图遍历这些内容,但是我无法这样做。 file.readlines()将文件的行打印为列表。所以我得到这个: 但是,当我遍历此列表时,我无法这样做。 另外,当我将其分配给倒数第二行中的变量“ topology_list”并打印时。它给了我一个空的清单。 所以我

  • 问题内容: JavaScript中是否有类似于Python的函数? 我认为应该有比每次编写以下几行更好的方法: 问题答案: 不 ,没有,但 您可以制造一个 。 JavaScript的Python实现 尝试 模拟它在Python中的工作方式 ,我将创建类似于以下的函数: 请参阅此jsfiddle以获取证明。 JavaScript和Python之间的比较 它的工作方式如下: 返回, 返回, 返回, 返