24小时热门版块排行榜    

查看: 879  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

journeyer

铁虫 (正式写手)

[求助] 一个汉字竟坏了整个程序? 已有1人参与

最近,用python作字处理程序,发现一个特殊的汉字“䢵”(应该还有其它),当无“䢵”字时程序可以正常运行,但只要有“䢵”,程序就会中断,请论坛里高手指点。
CODE:
# -*- coding: UTF-8 -*-

import codecs, sys

print '-'*60
# 创建gbk编码器
look  = codecs.lookup("gbk")
# 创建utf-8编码器
look2 = codecs.lookup("utf-8")

a = '我爱北京天安门䢵' #去掉“䢵” windows 下运行就正常

print len(a), a
# 把a编码为内部的unicode
b = look2.decode(a)
# 返回的b[0]是数据,b[1]是长度,这个时候的类型是unicode了
print b[1], b[0], type(b[0])
# 把内部编码的unicode转换为gbk编码的字符串,encode方法会返回一个字符串类型
b2 = look.encode(b[0])
# 发现不一样的地方了吧?
print b2[1], b2[0], type(b2[0])
# codecs.encode会统计字数
print len(b2[0])

# 需要说明的是,上述程序在 Windows 下运行时会因“䢵”字存在而出问题,而在 Mac 下运行正常。

[ Last edited by jjdg on 2013-12-25 at 00:16 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

garyfirst

木虫 (小有名气)

用python处理汉字还真是不容易呢
CL
3楼2014-02-18 08:04:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

sunoru

新虫 (初入文坛)

【答案】应助回帖

额,刚刚在我的电脑上试了一下,因为windows的命令行默认编码是gbk的,所以就算你已经得到了一个正确的unicode字符串,在输出到命令行的时候它还是会被转成gbk,但在gbk中并没有“䢵”这个字,导致会看到出错。。

一个解决方法是用不是gbk编码的控制台来运行这个程序,比如我用的是qt版的IPython。

(不知道还帮不帮得上楼主的忙
2楼2014-01-22 16:09:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

journeyer

铁虫 (正式写手)

???????:
2?: Originally posted by sunoru at 2014-01-22 16:09:22
??????????????????????????windows????????????????gbk????????????????????????????unicode???????????????????е??????????????gbk??????gbk?в???С?䢵??????????????????? ...

?????????????Mac????????????????Win??????а???????? gbk ???????????䢵??????
4楼2014-02-18 15:15:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

journeyer

铁虫 (正式写手)

引用回帖:
3楼: Originally posted by garyfirst at 2014-02-18 08:04:20
用python处理汉字还真是不容易呢

其实,我在Mac下运行python程序没有问题,python处理字符串还是很方便的。
5楼2014-02-18 15:17:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 生物学一志愿985,分数349求调剂 +6 zxts12 2026-03-21 9/450 2026-03-23 18:37 by macy2011
[考研] 一志愿西安交通大学材料工程专业 282分求调剂 +11 枫桥ZL 2026-03-18 13/650 2026-03-22 20:26 by edmund7
[考研] 求调剂一志愿海大,0703化学学硕304分,有大创项目,四级已过 +6 幸运哩哩 2026-03-22 10/500 2026-03-22 20:10 by edmund7
[考研] 一志愿华中农业071010,总分320求调剂 +5 困困困困坤坤 2026-03-20 6/300 2026-03-22 17:41 by hxsm
[考研] 305分求调剂(食品工程) +4 Sxy112 2026-03-21 6/300 2026-03-22 15:26 by 无懈可击111
[考研] 311求调剂 +3 26研0 2026-03-20 3/150 2026-03-22 14:46 by ColorlessPI
[考研] 269专硕求调剂 +6 金恩贝 2026-03-21 6/300 2026-03-22 14:31 by ColorlessPI
[考研] 考研调剂 +4 来好运来来来 2026-03-21 4/200 2026-03-22 12:15 by 星空星月
[考研] 南昌大学材料专硕311分求调剂 +6 77chaselx 2026-03-20 6/300 2026-03-21 07:24 by JourneyLucky
[考研] 初始318分求调剂(有工作经验) +3 1911236844 2026-03-17 3/150 2026-03-21 02:33 by JourneyLucky
[考研] 材料 336 求调剂 +3 An@. 2026-03-18 4/200 2026-03-21 01:39 by JourneyLucky
[考研] 304求调剂 +6 曼殊2266 2026-03-18 6/300 2026-03-21 00:32 by JourneyLucky
[考研] 321求调剂 +9 何润采123 2026-03-18 11/550 2026-03-20 23:19 by JourneyLucky
[考研] 295复试调剂 +8 简木ChuFront 2026-03-19 8/400 2026-03-20 20:44 by zhukairuo
[考研] 0817 化学工程 299分求调剂 有科研经历 有二区文章 +22 rare12345 2026-03-18 22/1100 2026-03-20 20:39 by zhukairuo
[考研] 一志愿 南京航空航天大学大学 ,080500材料科学与工程学硕 +5 @taotao 2026-03-20 5/250 2026-03-20 20:16 by JourneyLucky
[考研] 材料学硕318求调剂 +5 February_Feb 2026-03-19 5/250 2026-03-19 23:51 by 23Postgrad
[考研] 0703化学调剂 +4 18889395102 2026-03-18 4/200 2026-03-19 16:13 by 30660438
[考研] 收复试调剂生 +4 雨后秋荷 2026-03-18 4/200 2026-03-18 14:16 by elevennnne
[硕博家园] 湖北工业大学 生命科学与健康学院-课题组招收2026级食品/生物方向硕士 +3 1喜春8 2026-03-17 5/250 2026-03-17 17:18 by ber川cool子
信息提示
请填处理意见