黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

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

系統(tǒng) 1919 0

Python2默認(rèn)是不支持中文的,一般我們?cè)诔绦虻拈_頭加上#-*-coding:utf-8-*-來解決這個(gè)問題,但是在我用open()方法打開文件時(shí),中文名字卻顯示成了亂碼。

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

Python中有編碼轉(zhuǎn)換的函數(shù)有:

decode(char_set) 實(shí)現(xiàn)char_set解碼成Unicodeencode(char_set) 實(shí)現(xiàn)Unicode編碼成char_set

完美解決Python2操作中文名文件亂碼的問題_第1張圖片

查看Python文檔會(huì)發(fā)現(xiàn):

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

我之前加上#-*-coding:utf-8-*-將編碼設(shè)置為utf-8,當(dāng)調(diào)用這個(gè)方法往里傳參數(shù)時(shí),需要將這個(gè)變量filename解碼成Unicode。

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

以上就是小編為大家?guī)淼耐昝澜鉀QPython2操作中文名文件亂碼的問題全部?jī)?nèi)容了,希望大家多多支持腳本之家~


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論