tarfile读文件python_Python之tarfile模块的使用

本文通过13个示例详细介绍了如何使用Python的tarfile模块,包括判断是否为tar文件、读取文件名、获取文件信息、异常处理、读取文件内容、解压、压缩、追加文件等功能,是理解tarfile模块的实用教程。
摘要由CSDN通过智能技术生成

1、判断是否是tar文件的示例

#!/usr/bin/envpython3

# encoding: utf-8import tarfile

filename_list= ['REME.txt', 'example.bz2', 'tarDir.tar', 'content.txt']for filename infilename_list:

try:

print('{:>15} {}'.format(filename, tarfile.is_tarfile(filename)))

except IOError as err:

print('{:>15} {}'.format(filename, err))

tarfile_is_tarfile.py

运行效果

[root@ mnt]# python3 tarfile_is_tarfile.py

REME.txt [Errno2] No such file or directory: 'REME.txt'example.bz2 False

tarDir.tarTrue

content.txt False

2、获取tar文件里面所有的文件名

#!/usr/bin/env python3#encoding: utf-8

importtarfile

with tarfile.open('tarDir.tar', 'r') as t:print(t.getnames())

tarfile_getnames.py

运行效果

[root@ mnt]# python3 tarfile_getnames.py

['content.txt', 'example.bz2', 'tarDir', 'tarDir/lines.bz2']

3、获取tar文件里面所有的文件名、大小、模式等

#!/usr/bin/env python3#encoding: utf-8

importtarfileimporttime

with tarfile.open('tarDir.tar', 'r') as t:for member_info int.getmembers():print(member_info.name)print('修改时间:', time.ctime(member_info.mtime))print('模式:', member_info.mode)print('类型:', member_info.type)print('大小:', member_info.size, 'bytes')

tarfile_getmembers.py

运行效果

[root@ mnt]# python3 tarfile_getmembers.py

content.txt

修改时间: Wed Dec25 14:16:23 2019模式:420类型: b'0'大小:336bytes

example.bz2

修改时间: Mon Jan6 00:06:31 2020模式:420类型: b'0'大小:65bytes

tarDir

修改时间: Thu Jan9 10:29:51 20

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值