当前位置:  开发笔记 > 编程语言 > 正文

跟踪Python中的文件加载进度

如何解决《跟踪Python中的文件加载进度》经验,为你挑选了1个好方法。

我使用的很多模块将整个文件导入到内存中,或者在处理文件的内容时将其涓涓细流.我想知道是否有办法跟踪这种加载进度?可能是一个需要回调的包装类?



1> Evan Fosmark..:

我会通过确定文件的大小来做到这一点,然后简单地将总数除以读取的字节数.像这样:

import os

def show_progress(file_name, chunk_size=1024):
    fh = open(file_name, "r")
    total_size = os.path.getsize(file_name)
    total_read = 0
    while True:
        chunk = fh.read(chunk_size)
        if not chunk: 
            fh.close()
            break
        total_read += len(chunk)
        print "Progress: %s percent" % (total_read/total_size)
        yield chunk

for chunk in show_progress("my_file.txt"):
    # Process the chunk
    pass 

编辑:我知道这不是最好的代码,但我只是想展示这个概念.

推荐阅读
U友50081205_653
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有