从python压缩文件正在更改文件名

从python压缩文件正在更改文件名,python,Python,我正在尝试使用Python3创建gzip文件。当我gzip文件时,代码会在我不做任何事情的情况下更改文件名。我不确定我是否完全理解gzip模块的工作原理 代码如下: dir_in = '/localfolder/new_files/' dir_out = '/localfolder/zippedfiles/ file_name = 'transactions_may05' def gzip_files(dir_in, dir_out, file_name): with open(dir_

我正在尝试使用Python3创建gzip文件。当我gzip文件时,代码会在我不做任何事情的情况下更改文件名。我不确定我是否完全理解gzip模块的工作原理

代码如下:

dir_in = '/localfolder/new_files/'
dir_out = '/localfolder/zippedfiles/
file_name = 'transactions_may05'
def gzip_files(dir_in, dir_out, file_name):
    with open(dir_in + file_name, 'rb') as f_in, gzip.open(dir_out + 'unprocessed.' + file_name + '.gz', 'wb') as f_out:
        f_out.writelines(f_in)
预期输出: 外部文件:
未处理。事务\u may05.gz
当我双击它时,我应该会得到原始文件
transactions\u may05

电流输出: 外部文件:
未处理。事务\u may05.gz
——如预期 当我双击它的内部文件也有未处理。附加在它后面。我不知道为什么没有处理。附加到内部文件名 内部文件:
未处理。交易\u may05


任何帮助都将不胜感激。谢谢。

这是gzip和gunzip的预期行为。 如手册页所述:

gunzip在其命令行上获取文件列表并替换每个文件 名称以.gz、.gz、.z、-z或z(忽略大小写)结尾的文件,以及 它以正确的幻数和未压缩的 没有原始扩展名的文件


如果不想更改名称,则在压缩文件名时不应修改它。

Python工作正常。由于Gzip不是存档格式,gunzip(或其他实现)所能做的就是在.gz扩展膨胀时剥离它。如果希望指定输出文件名,请使用tar或zip等存档格式。