国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

完美解決Python2操作中文名文件亂碼的問題

2019-11-25 16:25:42
字體:
來源:轉載
供稿:網友

Python2默認是不支持中文的,一般我們在程序的開頭加上#-*-coding:utf-8-*-來解決這個問題,但是在我用open()方法打開文件時,中文名字卻顯示成了亂碼。

我先給大家說說Python中的編碼問題,Python中的字符串的大概分為為str和Unicode兩種形式,其中str常用的編碼類型為utf-8,gb2312,gbk等等,Python使用Unicode作為編碼的基礎類型。str記錄的是字節數組,只是某種編碼的存儲格式,終于輸出到文件或是打印出來是什么格式,完全取決于其解碼的編碼將他解碼成什么樣子;Unicode是一種類似于符號集的抽象編碼,它只規定了符號的二進制代碼,卻沒有規定這個二進制代碼該如何存儲,也就是它只是一種內部表示,不能直接保存,所以存儲時需要規定一種存儲形式,比如utf-8等。

Python中有編碼轉換的函數有:

decode(char_set) 實現char_set解碼成Unicodeencode(char_set) 實現Unicode編碼成char_set

 

查看Python文檔會發現:

open(filename, 'w')這個方法中,filename這個參數必須是Unicode編碼的參數。

我之前加上#-*-coding:utf-8-*-將編碼設置為utf-8,當調用這個方法往里傳參數時,需要將這個變量filename解碼成Unicode。

比如filename='中文.txt',使用open()時,這樣寫open(filename.decode('utf-8'), 'w'),這樣創建的中文文件名就沒有亂碼問題了。

以上就是小編為大家帶來的完美解決Python2操作中文名文件亂碼的問題全部內容了,希望大家多多支持武林網~

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 湘阴县| 玉树县| 山阴县| 迁安市| 调兵山市| 甘泉县| 沁阳市| 康平县| 宣汉县| 江阴市| 姚安县| 通化市| 平顶山市| 正蓝旗| 岳阳市| 沾益县| 焉耆| 平潭县| 瓮安县| 华阴市| 汉阴县| 梨树县| 塔河县| 涞源县| 马公市| 岑巩县| 马公市| 嵊州市| 山东| 大竹县| 旅游| 化德县| 涡阳县| 遵义县| 新巴尔虎左旗| 迁西县| 东兰县| 上思县| 方城县| 安丘市| 全南县|