最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 忽略文件名編碼的方法

 更新時間:2020年08月01日 10:25:24   作者:David Beazley  
這篇文章主要介紹了Python 忽略文件名編碼的方法,文中講解非常細致,代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下

問題

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

解決方案

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

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

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

>>> # Wrte a file using a unicode filename
>>> with open('jalape\xf1o.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'jalapen\xcc\x83o.txt']

>>> # Open file with raw filename
>>> with open(b'jalapen\xcc\x83o.txt') as f:
...  print(f.read())
...
Spicy!
>>>

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

討論

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

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

關于打印不可解碼的文件名,請參考

以上就是Python 忽略文件名編碼的方法的詳細內容,更多關于Python 忽略文件名編碼的資料請關注腳本之家其它相關文章!

相關文章

  • python實現(xiàn)帶錯誤處理功能的遠程文件讀取方法

    python實現(xiàn)帶錯誤處理功能的遠程文件讀取方法

    這篇文章主要介紹了python實現(xiàn)帶錯誤處理功能的遠程文件讀取方法,涉及Python使用socket操作遠程文件的相關技巧,非常具有實用價值,需要的朋友可以參考下
    2015-04-04
  • Python默認參數(shù)的使用機制

    Python默認參數(shù)的使用機制

    Python中函數(shù)的默認參數(shù)是一種簡化函數(shù)調用并增強靈活性的機制,默認參數(shù)允許我們在函數(shù)定義時為某些參數(shù)指定默認值,這樣在調用函數(shù)時,如果不為這些參數(shù)傳值,它們將使用默認值,從而使得函數(shù)調用變得更加簡潔和靈活,感興趣的可以的了解一下
    2024-11-11
  • 用于業(yè)余項目的8個優(yōu)秀Python庫

    用于業(yè)余項目的8個優(yōu)秀Python庫

    今天小編就為大家分享一篇用于業(yè)余項目的8個大型Python庫,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-09-09
  • Python執(zhí)行JS的四種方法

    Python執(zhí)行JS的四種方法

    本文將詳細介紹Python中執(zhí)行和調用JavaScript的多種方法,包括內置的execjs庫、外部庫如PyExecJS、使用瀏覽器引擎和與Node.js的交互,感興趣的可以了解一下
    2023-11-11
  • Python設計模式之觀察者模式原理與用法詳解

    Python設計模式之觀察者模式原理與用法詳解

    這篇文章主要介紹了Python設計模式之觀察者模式,簡單講述了觀察者模式的概念、原理并結合實例形式分析了Python實現(xiàn)與使用方法,需要的朋友可以參考下
    2019-01-01
  • 如何使用Python 抓取和優(yōu)化所有網(wǎng)站圖像

    如何使用Python 抓取和優(yōu)化所有網(wǎng)站圖像

    我發(fā)布了一個通過FTP自動優(yōu)化新圖像的教程。這次我們將抓取整個網(wǎng)站,并在本地優(yōu)化我們遇到的圖像,按URL組織,怎么來操作呢,下面跟隨小編一起學習使用Python 抓取和優(yōu)化所有網(wǎng)站圖像的方法,感興趣的朋友一起看看吧
    2023-02-02
  • PyInstaller將Python腳本打包為.exe可執(zhí)行文件的步驟詳解

    PyInstaller將Python腳本打包為.exe可執(zhí)行文件的步驟詳解

    Python是一門強大而靈活的編程語言,為了方便共享和部署,我們可以將 Python 腳本打包為可執(zhí)行文件(.exe),這樣其他用戶就無需安裝 Python環(huán)境,直接運行可執(zhí)行文件即可,本文將介紹如何使用PyInstaller 工具實現(xiàn)這一目標,需要的朋友可以參考下
    2023-12-12
  • Python讀取ini文件、操作mysql、發(fā)送郵件實例

    Python讀取ini文件、操作mysql、發(fā)送郵件實例

    這篇文章主要介紹了Python讀取ini文件、操作mysql、發(fā)送郵件實例,本文重點在Mysql操作的講解上,包含查詢、插入、更新和刪除操作,需要的朋友可以參考下
    2015-01-01
  • pyqt5實現(xiàn)井字棋的示例代碼

    pyqt5實現(xiàn)井字棋的示例代碼

    這篇文章主要給大家介紹了關于pyqt5實現(xiàn)井字棋的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • Pytorch相關知識介紹與應用

    Pytorch相關知識介紹與應用

    最近又重拾了機器學習的相關技術,在本科畢設的階段下學習使用了Tensorflow 2.x工具,當時也是不求甚解,直接拿來用了,但現(xiàn)在已經有充足的時間、精力和基礎知識來重新學習一下
    2022-11-11

最新評論

洪泽县| 阿拉善左旗| 平乐县| 衢州市| 崇阳县| 平度市| 库伦旗| 大冶市| 盈江县| 洛南县| 青田县| 麻江县| 景洪市| 时尚| 敦化市| 科技| 迁西县| 开封县| 汕尾市| 邵阳县| 汝南县| 永丰县| 丹江口市| 安康市| 中阳县| 龙胜| 当雄县| 公安县| 白山市| 嘉兴市| 阿克| 青州市| 利津县| 华宁县| 丰城市| 墨江| 当阳市| 西安市| 洛宁县| 环江| 泉州市|