小编kon*_*unn的帖子

有没有办法引用当前分离的 HEAD 的子提交?

我知道如何将父提交称为HEAD^.

但是是否有可能以类似的方式引用子提交?

git version-control parent-child git-checkout git-revision

5
推荐指数
2
解决办法
1488
查看次数

从 Python 中的 gzip 压缩文本文件中读取行并获取读取的原始压缩字节数

我有许多 gzip 压缩的文本文件,我想解压缩并即时(在线)读取和处理,这样我就可以节省磁盘空间和从磁盘读取数据的时间,但代价是在线解压缩的时间。

所以我使用 gzip 模块和 tqdm 来跟踪进度。

但是,如何找出原始未压缩文件大小的大小,以便在完成跟踪进度之前设置要读取的总字节数(未压缩)计数?就我在网上搜索而言,对于大于 4 GB 的文件,这个问题很难在 gzip 中解决,这就是我的情况。

或者,我应该跟踪读取的压缩字节数,将总字节数设置为压缩文件的大小。

我怎样才能做到这一点?

这是下面的代码示例,其中的注释也反映了我想要实现的目标。

我正在使用 Python 3.5 。

import gzip
import tqdm
import os

size = os.path.getsize('filename.gz')
pbar = tqdm.tqdm(total=size, unit='b', unit_scale=True, unit_divisor=1024)

with gzip.open('filename.gz', 'rt') as file:
    for line in file:
        bytes_uncompressed = len(line.encode('utf-8'))
        # but how can I get compressed bytes read count?
        # bytes_compressed = ...?

        # pbar.update(bytes_compressed)
Run Code Online (Sandbox Code Playgroud)

python gzip filesize

3
推荐指数
2
解决办法
3075
查看次数