日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
創(chuàng)新互聯(lián)Python教程:python3如何改變默認(rèn)的ascii編碼?

我們都知道很多軟件里會(huì)自帶一些工具,大部分使用起來還是比較順手的,但是總會(huì)遇到一些不好用的工具,這時(shí)候我們就需要找一些其他的方法替換一下。提到utf-8小伙伴們肯定不陌生,我們?cè)谥暗奈恼轮杏蟹磸?fù)提及。python的字符串默認(rèn)的的是另一種編碼,很多人還是喜歡用utf-8,所以今天小編教大家改變默認(rèn)的ascii編碼方法。

堅(jiān)守“ 做人真誠 · 做事靠譜 · 口碑至上 · 高效敬業(yè) ”的價(jià)值觀,專業(yè)網(wǎng)站建設(shè)服務(wù)10余年為成都玻璃鋼坐凳小微創(chuàng)業(yè)公司專業(yè)提供企業(yè)網(wǎng)站制作營(yíng)銷網(wǎng)站建設(shè)商城網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)小程序網(wǎng)站建設(shè)網(wǎng)站改版,從內(nèi)容策劃、視覺設(shè)計(jì)、底層架構(gòu)、網(wǎng)頁布局、功能開發(fā)迭代于一體的高端網(wǎng)站建設(shè)服務(wù)。


Python默認(rèn)字符串采用的是ascii編碼方式,如下所示:

python -c "import sys; print sys.getdefaultencoding()"
Ascii


可以通過#coding:utf-8 指定頁面默認(rèn)編碼為utf-8(ps:但系統(tǒng)默認(rèn)還是ascii)

字符串的編解碼都是以u(píng)nicode為中間編碼,無法直接完成轉(zhuǎn)換,python會(huì)自動(dòng)按其系統(tǒng)默認(rèn)編碼方式解碼為unicode,再編碼成另一中編碼格式

比如:

#coding:utf-8
s = '中文'
print s.decode('gbk')

報(bào)錯(cuò)解決:

#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
# reload(sys)
# sys.setdefaultencoding('utf-8')
s = '中文'
 
print [s]
print s.encode('gbk')

此時(shí)報(bào)錯(cuò)為UnicodeDecodeError: 'ascii' codec can't decode byte 0xe4 in position 0: ordinal not in range(128) 猜測(cè)雖然指定了當(dāng)前頁面為utf-8,但因?yàn)橹苯觘ncode()轉(zhuǎn)換程序會(huì)自動(dòng)先按照系統(tǒng)默認(rèn)的編碼(此時(shí)還是ascii) decode一次成unicode,再從unicode編碼為gbk, 因?yàn)閟編碼為utf-8,明顯解碼出錯(cuò)

有兩種解決辦法                 

1 手動(dòng)解碼 print s.decode(‘utf-8’).encode(‘gbk’)

2 改變系統(tǒng)默認(rèn)編碼,即加入這兩句

reload(sys)
sys.setdefaultencoding('utf-8')

相信看完本篇文章后,我們已經(jīng)學(xué)會(huì)把默認(rèn)字符串采用的ascii編碼換成utf-8了,相信后者大家使用起來更為順手。更多Python學(xué)習(xí)指路:PyThon學(xué)習(xí)網(wǎng)教學(xué)中心。


網(wǎng)頁標(biāo)題:創(chuàng)新互聯(lián)Python教程:python3如何改變默認(rèn)的ascii編碼?
分享網(wǎng)址:http://m.5511xx.com/article/djsjchs.html