python基礎知識之字符編碼與轉換


'''
在Python中,將一個字符串轉換為相應的二進制串(01形式表示),
並且能夠將這個二進制串再轉換回原來的字符串
'''
def
encode(s): return ' '.join([bin(ord(c)).replace('0b', '') for c in s]) def decode(s): return ''.join([chr(i) for i in [int(b, 2) for b in s.split(' ')]]) >>>encode('hello') '1101000 1100101 1101100 1101100 1101111' >>>decode('1101000 1100101 1101100 1101100 1101111') 'hello'
print('我愛你'.encode('utf-8'))
a = '我愛你'.encode('utf-8')
print(a)
print(a.decode('utf-8'))

>>>b'\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0'
>>>b'\xe6\x88\x91\xe7\x88\xb1\xe4\xbd\xa0'
>>>我愛你

 

#中文一般是gbk碼,window的系統一般是用gbk編碼,但是用這個編碼不可以和別的國家語言通用#
#后來出了萬國碼,unicode,utf-8是它的一部分,別的任何碼都可以轉成unicode#
python3.x后都是默認用Unicode作為編碼
。Unicode只能用.encode('')解碼成其他編碼,但是不解碼也可以。
#!-*- coding:utf-8  聲明,python2.7的字符編碼修改
#-*- coding:gbk -*- 聲明,python3.x的字符編碼修改
#python2.7默認是ascii碼進行解碼的
#默認用utf-8的模式時可以在字符串前加u“你好”直接說明是unicode的碼下編碼的
python轉碼后它也會將其轉成byte類型
sys.getdefaultencoding()#打印系統默認使用的編碼
type()#也可以打印編碼類型

encode編碼
decode解碼

 同理轉回來一樣的方法~

 




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM