内容优类库简介.pdfVIP

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

标准类库简介

by:授客

二进制数据服务

struct—Interpretbytesaspackedbinarydata

struct模块提供pack(),unpack()函数处理可变二进制记录格式。

struct.pack(fmt,v1,v2,...)

返回包含v1,v2,...值的字节对象。根据fmt打包v1,v2,...。参数v1,v2,...必须匹配

fmt要求的值

struct.unpack(fmt,buffer)

根据fm解压buffer。返回结果为一元组。buff必须包含fmt要求的数据量((len(bytes)必

须等于calcsize(fmt))。

例1:

fromstructimport*

pack(hhl,1,2,3)

b\x01\x00\x02\x00\x03\x00\x00\x00

calcsize(hhl)

8

unpack(hhl,b\x01\x00\x02\x00\x03\x00\x00\x00)

(1,2,3)

例2:显示不通过使用zipfile模块来遍历一个zip文件中的头部信息。”H”,”I”分别代表

2个和4个字节的无符号数。””暗示为标准大小且按小端字节的顺序。

importstruct

withopen(Tencent.zip,rb)asf:

...data=f.read()

...

start=0

foriinrange(3):#showthefirst3fileheaders

...start+=14

...fields=struct.unpack(IIIHH,data[start:start+16])

...

...start+=16

...filename=data[start:start+filenamesize]

...start+=filenamesize

...extra=data[start:start+extra_size]

...print(filename,hex(crc32),comp_size,uncomp_size)

...start+=extra_size+comp_size#skiptothenextheader

...

bTencent/0x000

b\xa0\n\xa8\xef\x02\x00\x00\xea0x000

bAdbModeC0x000

文本处理

字符串

模版字符串(Temtestrings)

string模块提供了一个Temte模版类,实现简单字符串替换。

占位符说明:

$$表示$;

$identifier匹配一个key为identifier的映射;

${identifier}等价于$identifier当有其它非占位符组成的字符紧随占位符的情况,比如

${identifier}other_character

构造函数

Temte(temte)#temte为模版字符串

类函数

substitute(map,**kwds)#执行模版替换,返回一个新字符串。

说明:

map:接收类似字典,带有用于匹配模版中占位符的key的对象。

**kwds:接收参数。

当同时提供的map和kwds参数中的key重复时,kwds中key优先匹配占位符。

safe_substitute(map,**kwds)

类似substitute(),不同的是:

1,未提供与占位符对应的参数时,原样输出占位符,而不抛出KeyError异常

2,不把单一的$当作占位符.

例1:

fromstringimportTemte

tmplt=Temte(${who}shoukesent$$10to$somebody)

tmplt.substitute(who=i,som

文档评论(0)

kay5620 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8001056127000014

1亿VIP精品文档

相关文档