我正在尝试在Python 3.5.2中创建ping清理程序,但是当我尝试读取文件对象时os.popen()返回我得到一个UnicodeDecodeError:
File "C:\Python35\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 18: character maps to <undefined>
我使用的是德语版Windows 10 x64,在ping命令的输出中有各种'ü',我认为这是问题所在。我无法找到一种方法来选择用于返回对象的编码。
有趣的是,Python 2.7.12的一切都运行得很好,所以在解码中肯定会有所改变。