python - 請問png讀取出來到編碼是怎樣的?
問題描述
想了解一下圖像實際儲存的代碼形式是怎樣的?試著暴力讀取一下:
with open(’/usr/src/pycharm-2017.1/bin/pycharm.png’,’r’) as f: print(f.read())
結果出現了錯誤
Traceback (most recent call last): File '/home/noodle/PycharmProjects/untitled/test/picture_test.py', line 3, in <module> print(f.read()) File '/usr/local/python34/lib/python3.4/codecs.py', line 319, in decode (result, consumed) = self._buffer_decode(data, self.errors, final)UnicodeDecodeError: ’utf-8’ codec can’t decode byte 0x89 in position 0: invalid start byte請輸入代碼
這是為啥呢?請問除了用別的庫,有什么方法解決么?
問題解答
回答1:不要用文本文件格式打開非文本的文件!
PNG這種文件應該用binary格式的文件來讀取:
with open(’#filename#.png’,’rb’) as f: print(f.read())回答2:
試下用 ’rb’ 模式打開
with open(’/usr/src/pycharm-2017.1/bin/pycharm.png’,’rb’) as f: print(f.read())
相關文章:
1. javascript - 能否讓vue-cli的express修改express重啟服務2. 解決Android webview設置cookie和cookie丟失的問題3. javascript - gulp打包引入文件路徑在生產環境和開發環境下的切換4. node.js - npm一直提示proxy有問題5. python - 我想把下面代碼中的多余空白行去除該怎么做,如何用正則實現6. PHP單例模式7. 最新版本的微信web開發者工具必須要APPID,會提供測試號,但是像你一樣tabBar配置的話不會顯示首頁與日志,難道我要下載跟你一樣的版本?8. 網頁爬蟲 - python爬蟲翻頁問題,請問各位大神我這段代碼怎樣翻頁,還有價格要登陸后才能看到,應該怎么解決9. python - tweepy 庫 連接Twitter API 報錯10. python - 網頁title中包含換行,如何用正則表達式提取出來?
