24小时热门版块排行榜    

Znn3bq.jpeg
查看: 924  |  回复: 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的回帖

sunoru

新虫 (初入文坛)

【答案】应助回帖

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

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

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

garyfirst

木虫 (小有名气)

用python处理汉字还真是不容易呢
CL
3楼2014-02-18 08:04:20
已阅   回复此楼   关注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的回帖
相关版块跳转 我要订阅楼主 journeyer 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 1rx34o113h 2026-05-23 3/150 2026-05-24 17:41 by 0i3mu4vkjz
[基金申请] 评审有感 +16 popular289 2026-05-18 27/1350 2026-05-24 17:34 by hhs666
[硕博家园] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +4 hvkbtfonbv 2026-05-23 4/200 2026-05-24 17:21 by 75ui6h7z2t
[博后之家] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 hvkbtfonbv 2026-05-23 3/150 2026-05-24 17:10 by 75ui6h7z2t
[考博] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 hvkbtfonbv 2026-05-23 3/150 2026-05-24 17:01 by 75ui6h7z2t
[考研] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 a2tycdlnq1 2026-05-23 5/250 2026-05-24 16:21 by hhx1yx9evi
[论文投稿] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 a2tycdlnq1 2026-05-23 4/200 2026-05-24 16:16 by hhx1yx9evi
[基金申请] 河北省自然科学基金 +6 Peterchao 2026-05-18 9/450 2026-05-24 16:02 by 130067131
[基金申请] 西安交大新媒学院副院长用撤稿论文结题 +3 bjvtcliu 2026-05-24 5/250 2026-05-24 10:16 by kudofaye
[教师之家] 某211大学教师把个人教师官方主页改成:我跑了我跑了我跑了!官宣跑路! +4 zju2000 2026-05-21 5/250 2026-05-24 09:35 by songwz
[考博] 26/27申博自荐 10+4 ZXW0202 2026-05-22 9/450 2026-05-24 08:47 by bjvtcliu
[基金申请] 青B发送上会通知了吗 +5 chemBioBro 2026-05-22 7/350 2026-05-23 12:35 by zhuifengzhy
[考博] 博士申请 +3 焦晓明 2026-05-21 3/150 2026-05-23 11:26 by mlc840311
[论文投稿] 投稿求助,期刊 +4 希冀,有书读 2026-05-20 8/400 2026-05-22 10:16 by 希冀,有书读
[基金申请] 面上本子正文33页,违规吗?会被低分嘛? +14 1234567wang 2026-05-17 16/800 2026-05-21 17:58 by 脆脆的饼干
[基金申请] 国自然评分 +4 无名者登山 2026-05-20 5/250 2026-05-21 16:35 by swuq
[基金申请] 提交了我也来说说感想 +9 fummck 2026-05-20 10/500 2026-05-21 14:17 by draco1987
[考博] 如果工作了想读博,可以边工作边读全日制嘛? 30+3 铁达火车 2026-05-18 5/250 2026-05-20 09:33 by tfang
[考博] 博士申请 +5 星…… 2026-05-18 6/300 2026-05-18 23:49 by 糊糊涂涂好
[硕博家园] 我在等一个没有答案的答案 +3 Love_MH 2026-05-17 3/150 2026-05-18 02:22 by 竹林孤影
信息提示
请填处理意见