中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

解決Python2讀文件內容時亂碼的問題

發布時間:2020-07-17 10:56:04 來源:億速云 閱讀:233 作者:清晨 欄目:編程語言

不懂解決Python2讀文件內容時亂碼的問題?其實想解決這個問題也不難,下面讓小編帶著大家一起學習怎么去解決,希望大家閱讀完這篇文章后大所收獲。

Python2讀文件內幫助。容亂碼怎么解決

1.設置默認編碼

在Python代碼中的任何地方出現中文,編譯時都會報錯,這時可以在代碼的首行添加相應說明,明確utf-8編碼格式,可以解決一般情況下的中文報錯。當然,編程中遇到具體問題還需具體分析啦。

推薦學習《Python教程》。

#encoding:utf-8

或者

# -*- coding: utf-8 -*- 
import sys 
reload(sys) 
sys.setdefaultencoding('utf8') # 設置默認編碼格式為'utf-8'

2.文件讀寫

文件讀寫中遇到中文,通常不會報錯,但是最后運行結果顯示亂碼,給后續處理帶來不便。

2.1 讀文件

讀文件時,如果文件路徑、文件名中有中文,需要使用unicode函數將其編碼為'utf-8'格式,然后再進行正常的文件讀取。以我常用的pandas的read_csv函數為例,使用如下代碼可以成功地讀取名為“POI總表”的csv文件,保存在DataFrame數據類型的poi_list。

import pandas as pd
inpath = 'C:\\POI總表.csv'
**path = unicode(inpath, 'utf-8')**
poi_list = pd.read_csv(path)

2.2 寫文件

文件名有中文,文件名亂碼

當想要將程序運行結果保存到文本文件時,文本文件的命名中如果有中文,不做處理文件名會出現亂碼。利用unicode函數進行編碼可解。

unicode(‘中文.csv','utf-8')

文件內容有中文,excel打開內容亂碼

如果將包含中文的結果輸出到csv文件,一般默認使用Excel打開文件時,文件內容會出現亂碼,而使用文本編輯器打開不會亂碼。這是因為Excel默認的編碼方式為‘GBK‘,而文本編輯器默認的格式為‘utf-8'。使用codecs包在創建文件后添加語句

f.write(codecs.BOM_UTF8)

可解

name='語文'
f = open(name+'.csv','w')
f.write('123,語文')
f.close()
#修改編碼
import codecs
f = open(**unicode(name+'.csv','utf-8')**,'w') # 文件名不亂碼
**f.write(codecs.BOM_UTF8) # excel打開內容不亂碼的核心語句**
f.write('123,語文')
f.close()

輸出結果:

#文件名:璇枃.csv
#Excel打開  123 璇枃
#文本編輯器打開 123,語文
#改編碼后
#文件名:語文.csv
#Excel打開  123 語文
#文本編輯器打開 123,語文

感謝你能夠認真閱讀完這篇文章,希望小編分享解決Python2讀文件內容時亂碼的問題內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

黄龙县| 读书| 垫江县| 潮州市| 台州市| 宁德市| 新源县| 东安县| 花莲市| 确山县| 沙雅县| 洪泽县| 平阴县| 惠东县| 曲水县| 麟游县| 乌海市| 营口市| 晋城| 集贤县| 光山县| 河南省| 万州区| 郸城县| 辽宁省| 五常市| 嘉义县| 当雄县| 缙云县| 海原县| 长乐市| 墨玉县| 禹州市| 彭水| 东安县| 兴安盟| 峨眉山市| 鸡东县| 湘潭市| 娄烦县| 林州市|