TA的每日心情 | 开心 2023-3-10 21:15 |
---|
签到天数: 1329 天 [LV.10]以坛为家III
|
楼主 |
发表于 2019-3-21 09:14:04
|
显示全部楼层
本帖最后由 enjoy了哦 于 2019-3-21 09:53 编辑 ' @' A7 E- O9 s' s4 ^9 z" K) L5 A4 R( E
: g7 Z6 E9 |' k, k; z思路:
% w% i' \; }" M6 ] X2 U: _: k1. 首先将pdata数据写入一个字符串str中,
( U2 M$ Q* u5 _8 W2. (载入base64模块后)调用base64.b64decode(str),将结果赋值给另一个变量binary_data。: B. S9 M5 z2 |8 u, C/ W0 L, v
3. 以二进制写入模式创建一个文件,例如data.gz。3 f/ i8 e8 ?# y3 J
4. 将binary_data写入data.gz中。
: N9 P" r5 f0 e7 i2 ^; h2 q5. 关闭该文件data.gz。
H4 a5 b, w; n/ {2 q. T$ P1 S' X9 j
上Python代码:& L6 P8 m# I% j" F2 L
- import base64
& d2 G7 U+ A' m, d- y! o1 O/ w; u - 8 z" n. P' e" o6 D" Z) L8 |
- str = '此处填入pdata数据'2 u1 O9 j4 G" k; O0 a, ]$ }
- binary_data = base64.b64decode(str)
/ `7 p1 P7 k6 M - f = open('data.gz','wb')
4 M5 s% L5 c& m% I: l9 ?, D - f.write(binary_data)- ?9 O3 p, @! @" @/ f
- f.close()
复制代码 + v9 s Q4 B9 `* ?
! | Y- \7 \5 K) ^然后就可以打开data.gz观察解码出的数据。
$ ~2 e/ t/ C2 ]* d; p6 T2 [& {) O0 G' i, v; m1 Z
% f! ^5 _1 d* I' l如果是Python 3.2 及以上,还可以更方便一些:
. I5 Y9 l* Q2 I- import base64" U% i+ k& f& j( y
- import gzip
p' }$ U- H* L& P6 } - 6 [- T4 d1 d5 t) S
- str = '此处填入pdata数据'( x V$ x8 I& J5 v, p
- binary_data = base64.b64decode(str)0 `& H. v" a3 i
- dict_content = gzip.decompress(binary_data)
复制代码 / ]' H$ w2 U% z$ k3 q% _
这里的dict_content就是最终的结果,也就是词典的数据。
* y- Q! J/ H& N2 J, f1 e |
|