python程序输出中的Unicode错误

时间:2015-10-29 10:42:17

标签: python bash

我正在尝试从我的python程序运行一个bash命令,将结果放在一个文件中。我正在使用os.system来执行bash命令。但是我收到的错误如下:

UnicodeEncodeError: 'ascii' codec can't encode character u'\u201c' in position 793: ordinal not in range(128)

我无法理解如何处理它。请给我一个解决方案。

2 个答案:

答案 0 :(得分:0)

查看this博文

  

这些消息通常意味着您尝试将Unicode字符串与8位字符串混合,或者尝试将Unicode字符串写入仅处理ASCII的输出文件或设备。

尝试执行以下操作来编码字符串:

  

然后可以使用它将输入数据正确转换为Unicode。假设value引用的字符串编码为UTF-8:   <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.4/js/bootstrap.js"></script> <link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.4/css/bootstrap.css" rel="stylesheet"/> <button id="boo" type="submit" class="btn btn-default">go</button>

答案 1 :(得分:0)

您需要将字符串编码为:

your_string =  your_string.encode('utf-8')

例如:

>>> print(u'\u201c'.encode('utf - 8'))
“