python編碼:gbk編碼與解碼


從RF輸入的中文會進行unicode編碼:u'\u6587\u4ef6\u5230\u8fbe\u6210\u529f'

從orc數據庫查詢到的中文會進行gbk編碼得到ASCII:'\xce\xc4\xbc\xfe\xb5\xbd\xb4\xef\xb3\xc9\xb9\xa6'

ASCII編碼數據進行decode('gbk')后得到unicode編碼的數據;

unicode編碼的數據encode('gbk')后得到gbk編碼數據ASCII;

 更詳細的內容見:http://www.2cto.com/kf/201407/317866.html

gbk編碼與解碼:

>>> a='\xce\xc4\xbc\xfe\xb5\xbd\xb4\xef\xb3\xc9\xb9\xa6' 
>>> a
'\xce\xc4\xbc\xfe\xb5\xbd\xb4\xef\xb3\xc9\xb9\xa6'
>>> b=a.decode('gbk') #gbk解碼,得到的是unicode對象
>>> b
u'\u6587\u4ef6\u5230\u8fbe\u6210\u529f'
>>> print u'\u6587\u4ef6\u5230\u8fbe\u6210\u529f'
文件到達成功
>>> c=b.encode('gbk') #gbk編碼,得到的是ASCII對象
>>> c
'\xce\xc4\xbc\xfe\xb5\xbd\xb4\xef\xb3\xc9\xb9\xa6'
>>> a==c
True
>>> print c
文件到達成功
>>>
>>> print a.decode('utf-8')

Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    print a.decode('utf-8')
  File "D:\Python27\lib\encodings\utf_8.py", line 16, in decode
    return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xce in position 0: invalid continuation byte

 utf8編碼與解碼:

>>> a=u'10'
>>> b=10
>>> a
u'10'
>>> b
10
>>> c='10'
>>> c
'10'
>>> b==c
False
>>> a==c
True
>>> a==b
False
>>> aint=int(a)
>>> aint
10
>>> astr=a.encode('utf8')
>>> astr
'10'
>>> 

 


免責聲明!

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



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