亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

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

Python 忽略文件名編碼的方法

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

問題

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

解決方案

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

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

如果因為某種原因你想忽略這種編碼,可以使用一個原始字節(jié)字符串來指定一個文件名即可。比如:

>>> # 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!>>>

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

討論

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

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

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

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

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 久久伊人精品综合观看99 | 国产黄频 | 亚洲乱码一二三四区国产 | 亚洲国产日韩综合久久精品 | 久久国产免费福利永久 | 国产欧美综合在线 | 一级毛片aaaaaa免费看 | 狠狠婷婷 | 国产精品一区二区三区免费 | 一级女性大黄生活片免费 | 视频色www永久免费 视频免费1区二区三区 | 伊人久久久综在合线久久在播 | 色综合天天色 | 麻豆91制片厂 | 色片在线免费观看 | 欧美成人做性视频在线播放 | 99国产精品免费视频观看 | 黄色网免费 | 日韩欧美一区二区在线观看 | 在线精品视频在线观看高清 | 久久国产视频在线观看 | 麻豆视频免费观看入口 | 天天射色综合 | 国产亚洲欧洲日韩综合v | 国产五月色婷婷六月丁香视频 | 久久不卡免费视频 | 岛国片欧美一级毛片 | 大尺度一级毛片波多野结衣 | 手机看片久久国产免费不卡 | 性a爱片免费视频性 | 欧美人与动物xxxx | 日韩伦理中文字幕 | 久久精品午夜视频 | 天天好比网 | 国产精品1024在线观看免费看 | 在线一区播放 | 免费观看一级欧美大 | 国产精品五月色六月婷婷 | 色综合久久婷婷天天 | 爱操成人网 | 欧美日韩国产另类在线观看 |