python附件亂碼
① 用sublime3打開python文件出現亂碼怎麼調
同學你打開的是pyc文件,python生成文件的後綴是".py"
補充:解釋一下pyc文件,pyc文件就是
Python
程序編譯後得到的位元組碼文件
(py->pyc),一般你直接執行python主文件(也就是.py文件)時會直接執行而不會生成pyc,但你在python
文件中import了別的.py文件,就會生成pyc文件,目的是提高載入模塊的速度,同時生成的pyc文件還有隱藏源碼的功能。
希望我的回答能夠幫到你:-)
② python中文顯示亂碼,已經在開頭有了coding: utf-8
亂碼原因:
因為你的文件聲明為 utf-8,並且也應該是用 utf-8 的編碼保存的源文件。但是 windows 的本地默認編碼是 cp936,也就是 gbk 編碼,所以在控制台直接列印 utf-8 的字元串當然是亂碼了。
解決方法:
py文件用記事本打開,另存為utf-8格式即可
③ python亂碼問題
有兩部分需要確認,伺服器python編碼,還有一個是客戶端的編碼。只要保持一致就沒問題。
④ python文件內容亂碼
⑤ Python為什麼一運行就是亂碼
可能是編碼問題,開頭加上coding:utf-8試試。
⑥ python發送郵件,網頁接收正常,Foxmail附件亂碼
應該是編碼的問題……說不定發送英文或者數字的能夠正常呢?
好吧,其實我也不太清楚
不過我關注的不是這個,而是放在文件夾下的方法太蛋疼了。
弄個拖動的吧,這樣就可以放在%userprofile%\AppData\Roaming\Microsoft\Windows\SendTo文件夾下,直接「發送到」了,getfile用於接收文件路徑。
try:
#得到拖動的文件路徑
getfile = sys.argv[1]except Exception, e:
#用正常方式打開
getfile = raw_input('輸入完整路徑獲取附件(拖動文件到控制台窗口):')filename = os.path.basename(getfile) #從路徑獲取文件名
對了,別忘記把.py後綴改成.pyw,消除黑色窗口……
還有弄個
import ctypes#……#結束後彈出提示對話框text = filename + '\n' + 'Successfully sent to ' + msg['to']ctypes.windll.user32.MessageBoxA(0, text, '', 0)#……
來吧,可勁地折騰吧。
⑦ python終端輸出亂碼怎麼解決
在命令行終端上工作時,經常會碰到一個頭疼的問題就是中文亂碼。下面我們就來看一下解決python在終端輸出亂碼的解決方法。
牽涉編碼的地方一共有五處:
Python代碼文件前兩行聲明的編碼
Python代碼文件實際存儲所使用的編碼
Vim的顯示編碼
Linux系統的文件編碼
SecureCRT等終端設置的顯示編碼
嚴格來講,五碼一致的時候,如果文件沒有損壞,應該是能夠正常顯示了。
Python編碼聲明:
如果python代碼文件中包含中文,就一定要在代碼文件的前兩行(注意:一定要是前兩行)做出編碼聲明,否則python代碼默認採用ASCII保存,這樣遇到中文字元就會報錯。在代碼頭部聲明編碼的方式有三種:
# coding=<encoding name>
# -*- coding: <encoding name> -*-
# vim: set fileencoding=<encoding name>
Vim中有關編碼的選項:
在 Vim 中,有四個與編碼有關的選項,它們是:fileencodings、fileencoding、encoding 和 termencoding。
Linux系統的編碼設置:
Linux的系統編碼設置可以通過設置locale來完成,直接在命令行敲locale,然後回車,即可查看當前系統的編碼設置,與保存文件相關的設置是LC_CTYPE。
如LC_CTYPE=zh_CN.gb18030,即把系統的編碼設置成為了gb18030。
更多Python知識請關注Python自學網
⑧ python 亂碼問題
解決方法:
1.直接使用 u'是' 形式,指明以unicode編碼,解碼方式會以頂部 #coding定義的編碼方式,如果不寫,以操作系統當前編碼方法,建議寫上#coding,因為要讓操作系統編碼和源文件編碼經常會不一樣。推薦使用這種方式
2.輸出時指定解碼方法 print '是'.decode("utf8") ,必須和保存的編碼一致,忽略#coding的定義
3.將#coding 和保存編碼改為和操作系統一樣的編碼,就可以直接print '是' 正常輸出,也不推薦,因為需要事先知道操作系統編碼,復制到其他電腦上,操作系統編碼不一樣就會出錯
#coding=gbk
print u'是' #方法1
print '是'.decode("gbk") #方法2
print '是' #方法3
注意:
#coding指明的編碼必須和保存的編碼一樣,不然1,3方法都會產生錯誤,原因也是保存編碼和讀取編碼不一致。一般IDE能夠自動根據#coding保存文件