Python 将csv写入tarfile,但内部没有扩展名
我正在尝试创建一个.csv文件,然后创建一个包含上一个csv的.gz文件。问题是.gz文件是用正确的文件名创建的,但没有.csv扩展名,我不知道如何解决这个问题 以下是相关代码:Python 将csv写入tarfile,但内部没有扩展名,python,tarfile,Python,Tarfile,我正在尝试创建一个.csv文件,然后创建一个包含上一个csv的.gz文件。问题是.gz文件是用正确的文件名创建的,但没有.csv扩展名,我不知道如何解决这个问题 以下是相关代码: new_file_name = 'test' data = [['some','test'],['data','strings']] csv_fname = '%s.csv' % new_file_name tar_fname = '%s.gz' % new_file_name with open(csv_fname
new_file_name = 'test'
data = [['some','test'],['data','strings']]
csv_fname = '%s.csv' % new_file_name
tar_fname = '%s.gz' % new_file_name
with open(csv_fname, 'wb') as csvfile:
swriter = csv.writer(csvfile)
for row in data:
swriter.writerow(row)
print 'creating archive'
out = tarfile.open(tar_fname, 'w:gz')
try:
print 'adding %s' % csv_fname
out.add(csv_fname)
finally:
print 'closing'
out.close()
我认为您的tarfile open应该类似于
tarfile.open(name=tar\u fname,mode='w:gz')
。我试过了,但没有改变任何东西。同样的结果。所以我运行了你的代码,它似乎对我有用。运行代码后,命令tar tvf test.gz
生成-rw-rw-r--jra/jra 25 2018-07-19 20:42 test.csv