最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python?Base64編碼和解碼操作

 更新時(shí)間:2022年12月02日 14:48:33   作者:峽谷的小魚  
Base64?就是一種基于64個(gè)可打印字符來(lái)表示二進(jìn)制數(shù)據(jù)的方法,這篇文章主要介紹了Python?Base64編碼和解碼,需要的朋友可以參考下

Base64編碼和解碼

Base64 不是加密算法,只是一種編碼方式,數(shù)據(jù)從一種形式轉(zhuǎn)換為另一種形式進(jìn)行傳輸/存儲(chǔ)。Base64 就是一種基于64個(gè)可打印字符來(lái)表示二進(jìn)制數(shù)據(jù)的方法。
Base64要求把每三個(gè)8Bit的字節(jié)轉(zhuǎn)換為四個(gè)6Bit的字節(jié)(38 = 46 = 24),然后把6Bit再添兩位高位0,組成四個(gè)8Bit的字節(jié),也就是說(shuō),轉(zhuǎn)換后的字符串理論上將要比原來(lái)的長(zhǎng)1/3。最后,用一個(gè)碼表來(lái)得到我們想要的字符串,這就是 Base64編碼。
碼表:

索引
對(duì)應(yīng)字符
索引
對(duì)應(yīng)字符
索引
對(duì)應(yīng)字符
索引
對(duì)應(yīng)字符
0
A
17
R
34
i
51
z
1
B
18
S
35
j
52
0
2
C
19
T
36
k
53
1
3
D
20
U
37
l
54
2
4
E
21
V
38
m
55
3
5
F
22
W
39
n
56
4
6
G
23
X
40
o
57
5
7
H
24
Y
41
p
58
6
8
I
25
Z
42
q
59
7
9
J
26
a
43
r
60
8
10
K
27
b
44
s
61
9
11
L
28
c
45
t
62
+
12
M
29
d
46
u
63
/
13
N
30
e
47
v
14
O
31
f
48
w
15
P
32
g
49
x
16
Q
33
h
50
y

Python 中集成了base64 模塊,可用于對(duì)二進(jìn)制數(shù)據(jù)進(jìn)行編碼解碼操作:

>>> a = "Hello world"
>>> b = base64.encode(a)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: encode() missing 1 required positional argument: 'output'
>>> 
>>> 
>>> b = base64.b64encode(a)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.8/base64.py", line 58, in b64encode
    encoded = binascii.b2a_base64(s, newline=False)
TypeError: a bytes-like object is required, not 'str'
>>> 
>>> 
>>> 
>>> a = b"Hello world"
>>> b = base64.b64encode(a)
>>> b
b'SGVsbG8gd29ybGQ='
>>> c = base64.b64decode(b)
>>> c
b'Hello world'
>>> d = b.decode('ascii')
>>> d
'SGVsbG8gd29ybGQ='
>>> e = base64.b64decode(d)
>>> e
b'Hello world'
>>>

可以看到使用 base64.b64encode 進(jìn)行編碼時(shí),只能時(shí)二進(jìn)制數(shù)據(jù),如果輸入時(shí) str 文本,將報(bào)錯(cuò) TypeError。
而使用 base64.b64decode 解碼時(shí),字符串和字節(jié)床都可以作為輸入。

到此這篇關(guān)于Python Base64編碼和解碼的文章就介紹到這了,更多相關(guān)Python Base64編碼和解碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python排序方法中sort和sorted的區(qū)別詳解

    Python排序方法中sort和sorted的區(qū)別詳解

    在python中常用的排序函數(shù)就是sort()和sorted()這兩個(gè)函數(shù),使用 sort() 或內(nèi)建函數(shù) sorted() 對(duì)列表進(jìn)行排序,本文將詳細(xì)介紹sorted和sort兩者之間的區(qū)別,感興趣的可以了解一下
    2023-08-08
  • Python tkinter常用操作代碼實(shí)例

    Python tkinter常用操作代碼實(shí)例

    這篇文章主要介紹了Python tkinter常用操作代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • python直接調(diào)用和使用swig法方調(diào)用c++庫(kù)

    python直接調(diào)用和使用swig法方調(diào)用c++庫(kù)

    這篇文章主要介紹了python直接調(diào)用和使用swig法方調(diào)用c++庫(kù),c++運(yùn)算速度快于python,python簡(jiǎn)單易寫。很多時(shí)候?qū)τ谝延械腸++代碼也不想用python重寫,此時(shí)就自然而然地想到用python調(diào)用c或者c++,兩全其美,需要的朋友可以參考一下
    2022-03-03
  • 詳解Python字符串原理與使用的深度總結(jié)

    詳解Python字符串原理與使用的深度總結(jié)

    本文將學(xué)習(xí)字符串?dāng)?shù)據(jù)類型相關(guān)知識(shí),將討論如何聲明字符串?dāng)?shù)據(jù)類型,字符串?dāng)?shù)據(jù)類型與?ASCII?表的關(guān)系,字符串?dāng)?shù)據(jù)類型的屬性,以及一些重要的字符串方法和操作,超級(jí)干貨,不容錯(cuò)過(guò)
    2022-05-05
  • Python中文文本處理利器jieba分詞庫(kù)使用

    Python中文文本處理利器jieba分詞庫(kù)使用

    這篇文章主要給大家介紹了關(guān)于Python中文文本處理利器jieba分詞庫(kù)使用的相關(guān)資料,jieba是python中一個(gè)重要的第三方中文分詞函數(shù)庫(kù),文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-12-12
  • 深入了解Python中Pytest Markers的使用方法

    深入了解Python中Pytest Markers的使用方法

    從這篇開始,逐一解決fixture是啥,mark是啥,參數(shù)request是啥,鉤子函數(shù)是啥,parametrize參數(shù)化是啥,這些問(wèn)題,本片先介紹一下mark是啥,以及如何使用
    2023-09-09
  • Python 操作 MySQL數(shù)據(jù)庫(kù)

    Python 操作 MySQL數(shù)據(jù)庫(kù)

    這篇文章主要介紹了Python 如何操作 MySQL,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-09-09
  • 詳解Python利用random生成一個(gè)列表內(nèi)的隨機(jī)數(shù)

    詳解Python利用random生成一個(gè)列表內(nèi)的隨機(jī)數(shù)

    這篇文章主要介紹了詳解Python利用random生成一個(gè)列表內(nèi)的隨機(jī)數(shù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Python configparser模塊配置文件過(guò)程解析

    Python configparser模塊配置文件過(guò)程解析

    這篇文章主要介紹了Python configparser模塊配置文件過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 使用Python實(shí)現(xiàn)大文件切片上傳及斷點(diǎn)續(xù)傳的方法

    使用Python實(shí)現(xiàn)大文件切片上傳及斷點(diǎn)續(xù)傳的方法

    本文介紹了使用 Python 實(shí)現(xiàn)大文件切片上傳及斷點(diǎn)續(xù)傳的方法,包括功能模塊劃分(獲取上傳文件接口狀態(tài)、臨時(shí)文件夾狀態(tài)信息、切片上傳、切片合并)、整體架構(gòu)流程、技術(shù)細(xì)節(jié)(相關(guān)接口和功能的代碼實(shí)現(xiàn)),最后進(jìn)行了小結(jié),需要的朋友可以參考下
    2025-01-01

最新評(píng)論

德阳市| 九龙城区| 舒兰市| 贺州市| 灌阳县| 崇州市| 客服| 兰溪市| 保康县| 谢通门县| 咸阳市| 巨鹿县| 上高县| 青阳县| 台安县| 咸阳市| 穆棱市| 临清市| 乌海市| 荔波县| 汾阳市| 五莲县| 舞阳县| 玛多县| 博白县| 革吉县| 田林县| 乐安县| 邵武市| 肥西县| 荆州市| 酉阳| 定安县| 炉霍县| 扶风县| 宜兰县| 六枝特区| 嵊州市| 新沂市| 铁岭市| 九龙县|