我正在开发一系列解析器,在其中执行单元测试时,会出现大量的回溯信息,例如:
File "c:\Python31\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x81 in position 112: character maps to <undefined>
文件是使用open()打开的,没有额外的参数。我能否向open()传递额外的参数或者使用codec模块中的内容来以不同的方式打开这些文件呢?
这个问题出现在用Python 2编写并用2to3工具转换成Python 3的代码中。
更新:原来这是由于将zipfile馈送到解析器中造成的。测试单元实际上希望发生这种情况。解析器应该识别它为不能解析的内容。所以,我需要改变我的异常处理。我正在进行这方面的工作。