我有以下代码来提取焦油gz在记录进度的同时归档:from __future__ import division
import tarfile
import os
theArchive = "/Users/Dennis/Instances/atlassian-jira-enterprise-4.1.2-standalone.tar.gz"
a = tarfile.open(theArchive)
tarsize = 0
print "Computing total size"
for tarinfo in a:
tarsize = tarsize + tarinfo.size
realz = tarsize
print "compressed size: " + str(a.fileobj.size)
print "uncompressed size: " + str(tarsize)
tarsize = 0
for tarinfo in a:
print tarinfo.name, "is", tarinfo.size, "bytes in size and is",
if tarinfo.isreg():
print "a regular file."
elif tarinfo.isdir():
print "a directory."
else:
print "something else."
a.extract(tarinfo)
tarsize = tarsize + tarinfo.size
print str(tarsize) + "/" + str(realz)
outout = tarsize / realz
print "progress: " + str(outout)
a.close()
这是相当快的和提取100MB焦油gz10秒后。我也希望有这样的视觉效果,所以我把它改为包括一个tkinter进度条:
^{pr2}$
它工作得很好很好,但是现在这个过程需要花费2分钟以上。为什么会发生这种情况?我该如何解决?在
谢谢!在
丹尼斯