TA的每日心情 | 开心 2023-3-10 21:15 |
|---|
签到天数: 1329 天 [LV.10]以坛为家III
|

楼主 |
发表于 2019-3-21 09:14:04
|
显示全部楼层
本帖最后由 enjoy了哦 于 2019-3-21 09:53 编辑 & T" r5 [+ C0 p0 H4 Z2 E4 h
! e a& A) ~" j8 I5 x+ d
思路:
) K1 t3 b1 [6 |/ ?2 d4 H1. 首先将pdata数据写入一个字符串str中,+ d/ S" S" ] m$ q
2. (载入base64模块后)调用base64.b64decode(str),将结果赋值给另一个变量binary_data。
5 R W5 @$ t6 U( Y# Z3. 以二进制写入模式创建一个文件,例如data.gz。: c% N0 D3 q* N7 z3 s8 \" T
4. 将binary_data写入data.gz中。 y3 r! Z* X3 _5 G* Y
5. 关闭该文件data.gz。
) ] b8 E% Q# c
5 p" M, e, `0 l2 T8 ~( w上Python代码:2 x& j! A8 z5 w1 a; Z
- import base64 O; ]% w D3 }3 h: C# |' I- O
5 K9 V2 X4 G& i G8 z% A2 f- str = '此处填入pdata数据'
- ^" m2 `6 c# R - binary_data = base64.b64decode(str)
; |; G' U7 P* @3 E - f = open('data.gz','wb')
, K! ?5 w6 o B5 w: z8 y% T! d: E - f.write(binary_data)
$ J9 x8 E" R" ~; | - f.close()
复制代码 # B' w2 t5 K1 I" n p/ L
' Z" ]' { b! c# I$ l% O
然后就可以打开data.gz观察解码出的数据。 O5 V6 W+ ^) g' q% P, b
5 w4 w% ?3 M. N
$ F+ ?* ^* i) i# D如果是Python 3.2 及以上,还可以更方便一些:3 Q" ~- U8 L3 T. n5 M0 i9 f
- import base64- _1 F8 C, h2 H( r& P% e y' R/ N$ \- F
- import gzip& H5 k6 Z2 {8 L0 J3 v$ b* X
: U: W% l& j) d- str = '此处填入pdata数据'% k/ ^; Z% e4 x6 ^
- binary_data = base64.b64decode(str)
J1 c& V( |3 D( h5 t - dict_content = gzip.decompress(binary_data)
复制代码
4 T/ [& c$ o4 n p$ t这里的dict_content就是最终的结果,也就是词典的数据。" ~8 y: Z" V$ t) S
|
|