国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Python 忽略文件名編碼的方法

瀏覽:2日期:2022-07-15 14:43:25

問題

你想使用原始文件名執(zhí)行文件的I/O操作,也就是說文件名并沒有經(jīng)過系統(tǒng)默認(rèn)編碼去解碼或編碼過。

解決方案

默認(rèn)情況下,所有的文件名都會(huì)根據(jù) sys.getfilesystemencoding() 返回的文本編碼來編碼或解碼。比如:

>>> sys.getfilesystemencoding()’utf-8’>>>

如果因?yàn)槟撤N原因你想忽略這種編碼,可以使用一個(gè)原始字節(jié)字符串來指定一個(gè)文件名即可。比如:

>>> # Wrte a file using a unicode filename>>> with open(’jalapexf1o.txt’, ’w’) as f:... f.write(’Spicy!’)...6>>> # Directory listing (decoded)>>> import os>>> os.listdir(’.’)[’jalapeño.txt’]>>> # Directory listing (raw)>>> os.listdir(b’.’) # Note: byte string[b’jalapenxccx83o.txt’]>>> # Open file with raw filename>>> with open(b’jalapenxccx83o.txt’) as f:... print(f.read())...Spicy!>>>

正如你所見,在最后兩個(gè)操作中,當(dāng)你給文件相關(guān)函數(shù)如 open() 和 os.listdir() 傳遞字節(jié)字符串時(shí),文件名的處理方式會(huì)稍有不同。

討論

通常來講,你不需要擔(dān)心文件名的編碼和解碼,普通的文件名操作應(yīng)該就沒問題了。 但是,有些操作系統(tǒng)允許用戶通過偶然或惡意方式去創(chuàng)建名字不符合默認(rèn)編碼的文件。 這些文件名可能會(huì)神秘地中斷那些需要處理大量文件的Python程序。

讀取目錄并通過原始未解碼方式處理文件名可以有效的避免這樣的問題, 盡管這樣會(huì)帶來一定的編程難度。

關(guān)于打印不可解碼的文件名,請(qǐng)參考

以上就是Python 忽略文件名編碼的方法的詳細(xì)內(nèi)容,更多關(guān)于Python 忽略文件名編碼的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 久久免费成人 | 极品的亚洲| 69视频在线观看xxxxx | 国产手机在线视频放线视频 | 日本久久伊人 | 孕妇一级片 | 一级毛片真人免费观看 | 国产欧美日本在线 | 伊人久久大香线焦在观看 | 日本在线免费视频 | 成人在线观看午夜 | 欧美理论大片清免费观看 | 乱码一区 | 午夜免费毛片 | 99视频在线免费观看 | 国产色视频在线观看免费 | 亚洲成在线| 欧美成人二区 | 最新国产精品自拍 | 国产精品久久久久久一级毛片 | 成人毛片免费免费 | 毛色毛片免费看 | 亚洲精品天堂一区 | 国产精品久久人人做人人爽 | 久久精品亚瑟全部免费观看 | 在线观看精品自拍视频 | 日本香蕉一区二区三区 | 国产精品国产国产aⅴ | 亚洲成人高清在线 | 久草视频手机在线观看 | 一级一片一_级一片一 | 国产在线观看精品 | 久久久久免费视频 | 美女一级毛片 | 美女视频永久黄网站免费观看国产 | 亚洲不卡视频在线观看 | 国产成人一区二区三区影院免费 | 欧美极品大肚孕妇孕交 | 国产精品久久久久影院 | 欧美在线播放成人a | 美女张开腿让我桶 |