看板Python
标 题Re: [问题] 程式输出 pipe redirect 与 Unicod …
发信站老鼠的香香乳酪洞 (Mon Sep 8 18:54:29 2008)
转信站ptt!ctu-reader!ctu-peer!news.nctu!csnews.cs.nctu!news.cs.nctu!Mouse
※ 引述《[email protected] (靠北喔= = )》之铭言:
: 我有一个程式会 print 出中文, 如下
: bash-3.2$ ./test.py
: 油品行销事业部台北市信义区松仁<b>路三号总机:(02)8789-8989 传真:(02)8789</b>-9050 免费 服务专线:0800-036188 电子服务信箱:[email protected] <b>...</b>
: 地址: 11010台北市信义区松仁<b>路三号/ 总机: 02-8789-8989 / 传真: 02-8789</b>-9000 加油 站客服电话: 0800-036188/网站浏览人数:3397635 人 <b>...</b>
: 但是当我想把输出写到一个档案 或是pipe到more的时候
: bash-3.2$ ./test.py |more
: Traceback (most recent call last):
: ......
: UnicodeEncodeError:
: 'ascii' codec can't encode characters in position 0-14:
: ordinal not in range(128)
: 请问我做错了什麽?
在 print 之前,先把字串用 utf-8 编码
如:
print u"测试"
改成:
print u"测试".encode("utf-8")
--
※Post by zao from linus.csie.ntu.edu.tw
老鼠的香香乳酪洞˙电子布告栏系统˙alexbbs.twbbs.org˙140.113.166.7