python idle 中文_Python IDLE 中文乱码问题
最近忙完了一個(gè)比較大的 GIS 軟件系統(tǒng),于是閑暇之余想研究一下開源的技術(shù),縱觀當(dāng)前開源桌面 GIS 軟件領(lǐng)域,最牛叉的莫過于大名鼎鼎的 Quantum GIS,簡稱 QGIS。做過 GIS 的人都知道,ESRI ArcGIS?是?GIS?軟件領(lǐng)域迄今為止世界上最牛叉的一個(gè),但由于是商業(yè)軟件,故而其價(jià)格普通大眾望而卻步。于是,尋找一款開源免費(fèi)的且功能又能與之睥睨的GIS軟件就在所難免了。本人經(jīng)過大量比較得出,QGIS 當(dāng)之無愧!
可是對于我來說,由于我是搞 GIS 軟件應(yīng)用開發(fā)的,而且只精通 Java 和 .NET 技術(shù),而 QGIS 只支持 C++ 和 Python 兩種開發(fā)語言,對于大多數(shù)人來說,C++ 技術(shù)門檻著實(shí)有點(diǎn)難搞。本人也不例外,由于 Python 知名度越來越高,且越來越優(yōu)秀,于是我選擇了 Python···
說道重點(diǎn)了,玩過 Python 的人都知道,搞 Python 開發(fā)一般都是在 Python 自帶的 IDLE 集成開發(fā)環(huán)境中寫代碼。當(dāng)我選好書籍,裝好 Python 軟件并配置好一切相關(guān)環(huán)境之后,便開始了 Python 編程之旅···
剛開始一切都還 OK,跟著書本上一步一步來,一句“Hello Python!”字符串優(yōu)雅地打印了出來···
慢著,我是中國人,打印點(diǎn)中文出來試試唄,于是我來一句 print ‘我是中國人‘,問題出來了,控制臺打印出了一串類似’\xd6\xd0\xce\xc4′
一樣的鬼符。我頓時(shí)納悶了,這玩意兒不能玩中文嗎?于是跑去問谷歌、度娘等大嬸,還是沒有找到終極解決方案。于是我想起了一句話“求人不如求己”,自己根據(jù)多年 Java 和 .NET 的經(jīng)驗(yàn)告訴自己,問題一定是出在 Encoding 上,終于功夫不負(fù)有心人,找到了解決的辦法。
問題分析:
首先,我的 Windows 7 中默認(rèn)的編碼是 GBK 編碼;
其次,在?Python 內(nèi)部,默認(rèn)的字符編碼應(yīng)該是跟操作系統(tǒng)一樣,而我們中國人用的多數(shù)都是 Windows 中文系統(tǒng),即默認(rèn)是 GBK 編碼。而在 IDLE 中,直接輸入中文字符,其實(shí)就是 GBK 編碼的;
分析到這里,理論上,應(yīng)該是沒問題的,為啥還是出鬼符呢?我們知道,在 Java 等其他語言中處理中文時(shí),無一例外都跟 Encoding 有關(guān)。因此,Python 也不例外,既然環(huán)境什么的都沒問題,那問題肯定在于源代碼文件的編碼和 IDLE 編輯器的編碼在設(shè)置上出現(xiàn)了不一致,進(jìn)而導(dǎo)致了問題的發(fā)生。順著自己的思路,首先我把我自己的 Python 源碼文件存成 Unicode 編碼格式,然后再在源代碼開始處加上如下這句:
# -*- coding: GBK -*-
...... 其他 Python 源代碼 ......
然后,選擇 IDLE 的菜單 Options -> Configure IDLE... 打開 IDLE 的配置選項(xiàng),切換到 General 選項(xiàng)卡,找到 Default Source Encoding 設(shè)置項(xiàng),選中 Locale-defined 選項(xiàng),點(diǎn)擊 Apply 按鈕,再點(diǎn)擊 OK 以便保存設(shè)置。
關(guān)閉退出 IDLE 并重寫打開 IDLE 集成開發(fā)環(huán)境,此時(shí)你再試一下:
>>> print‘我是中國人‘
我是中國人
哈哈,恭喜您,成功了!漂亮優(yōu)雅的“我是中國人”給打印了出來···
原文:http://blog.csdn.net/zlxzlxzlxzlxzlx/article/details/42519923
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的python idle 中文_Python IDLE 中文乱码问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 成人高考 计算机英语作文,2017年成人
- 下一篇: python wx模块下choice列表