91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

如何解決csv文件讀寫亂碼問題

發布時間:2021-10-21 14:34:07 來源:億速云 閱讀:348 作者:iii 欄目:編程語言

本篇內容主要講解“如何解決csv文件讀寫亂碼問題”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何解決csv文件讀寫亂碼問題”吧!

可能你有類似經歷,用excel打開一個csv文件,中文全部顯示亂碼。然后,手動用notepad++打開,修改編碼為utf-8并保存后,再用excel打開顯示正常。

如何解決csv文件讀寫亂碼問題

今天使用Python,很少代碼就能將上面過程自動化。首先,導入3個模塊:

# coding: utf-8 # @author: zhenguo # @date: 2020-12-16 # @describe: functions about automatic file processing  import pandas as pd   import os  import chardet

chardet 模塊用于得到文件的編碼格式,pandas 按照這個格式讀取,然后保存為xlsx格式。

獲取filename文件的編碼格式:

def get_encoding(filename):     """     返回文件編碼格式     """     with open(filename,'rb') as f:         return chardet.detect(f.read())['encoding']

保存為utf-8編碼xlsx格式文件,支持csv, xls, xlsx  格式的文件亂碼處理。需要注意,如果讀入文件為csv格式,保存時要使用xlsx格式:

def to_utf8(filename):     """     保存為 to_utf-8     """     encoding = get_encoding(filename)     ext = os.path.splitext(filename)     if ext[1] =='.csv':         if 'gb' in encoding or 'GB' in encoding:             df = pd.read_csv(filename,engine='python',encoding='GBK')         else:             df = pd.read_csv(filename,engine='python',encoding='utf-8')         df.to_excel(ext[0]+'.xlsx')     elif ext[1]=='.xls' or ext[1] == '.xlsx':         if 'gb' in encoding or 'GB' in encoding:             df = pd.read_excel(filename,encoding='GBK')         else:             df = pd.read_excel(filename,encoding='utf-8')         df.to_excel(filename)     else:         print('only support csv, xls, xlsx format')

上面函數實現單個文件轉化,下面batch_to_utf8 實現目錄 path 下所有后綴為ext_name文件的批量亂碼轉化:

def batch_to_utf8(path,ext_name='csv'):     """     path下,后綴為 ext_name的亂碼文件,批量轉化為可讀文件     """     for file in os.listdir(path):         if os.path.splitext(file)[1]=='.'+ext_name:             to_utf8(os.path.join(path,file))

調用:

if __name__ == '__main__':   batch_to_utf8('.') # 對當前目錄下的所有csv文件保存為xlsx格式,utf-8編碼的文件

文件讀寫時亂碼問題,經常會遇到,相信今天這篇文章里的to_utf8,batch_to_utf8函數會解決這個問題,你如果后面遇到,不妨直接引用這兩個函數嘗試下。

到此,相信大家對“如何解決csv文件讀寫亂碼問題”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

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

AI

吴川市| 德阳市| 元朗区| 大庆市| 巴里| 望江县| 赣榆县| 奈曼旗| 前郭尔| 梁平县| 黑河市| 岳阳市| 台南市| 本溪市| 紫金县| 顺义区| 咸宁市| 冕宁县| 榆中县| 莲花县| 黔西县| 内江市| 姚安县| 航空| 城市| 娄烦县| 木里| 遵化市| 延安市| 大竹县| 岳阳县| 兴和县| 比如县| 沅江市| 开平市| 汉寿县| 昆山市| 武胜县| 景东| 鹤壁市| 措美县|