显示找到的文件数和进度

时间:2016-12-30 00:04:13

标签: python

我目前有一个按关键字搜索文件的代码。有没有办法显示找到的文件数,因为代码运行和/或显示进度?我有一个大的目录要搜索,如果可能的话希望看到进展。我目前拥有的代码没有显示太多信息或处理时间。

{{1}}

1 个答案:

答案 0 :(得分:0)

这很简单,但为什么不保留一个柜台呢?

files

编辑:如果你想计算进度,首先要弄清楚你要迭代的文件数量。如果您使用嵌套列表推导,则可以展平os.walk发出的每个三元组中的每个filenames = [name for file in [files for _, _, files in os.walk(path)]] num_files = float(len(filenames))

files_found = 0
for step, name in enumerate(filenames):
  progress = step / num_files
  print "{}% complete".format(progress * 100)
    if keyword in name.lower():
      files_found += 1
      time.sleep(0)
      update_progress_bar()

现在,您可以在每个步骤中将进度描述为当前步骤数除以文件数。换句话说,使用enumerate获取步骤编号:

{{1}}

如果您希望在打印进度方面获得更多创意,那就是另一个问题。