[英]How to properly parse a file in python, and save its contents to a dictionary
[英]How can use the 'coding' header of a python source file to read its contents properly?
Python源文件通常帶有類似於以下內容的coding
標頭
# -*- coding: iso-8859-1 -*-
我如何在這行代碼中正確解析此類文件的內容? 有沒有比以二進制模式手動打開文件,讀取一行並檢查它是否包含標題更好的方法? 有圖書館這樣做嗎?
背景:這是在修復此bug的背景下進行的,當與python3和importmagic結合使用時,elpy會崩潰。 我要修復的代碼使用
with open(filename) as fd:
success = subtree.index_source(filename, fd.read())
並在非utf-8文件上崩潰。 理想情況下,我希望將更改減到最少。
有tokenize.open()
可以做到這一點:它使用coding
標頭( 編碼聲明 )中指定的字符編碼打開Python源文件。
您也可以實時解碼遠程Python文件 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.