[python]如何判断一个字符串使用的是什么编码?

hlddn 2004-12-06 06:01:09
如何能够判断字符串使用的是哪一种编码?
判断其使用的是unicode编码还是gbk编码?
谢谢!

...全文
2095 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
iBear 2004-12-17
  • 打赏
  • 举报
回复
对于多字节编码的字符串,比如gb2312和big5,这些编码总有重叠的部分,也就是给你一个word值,在gb2312中可以对应一个字符,在big5也同样对应一个字符,当然这两个字符是不同的,因此你根本无法用程序来判断那个编码是你需要的。当然,如果给定字符串足够多的话,那其中总有某个word是某个编码特有的值,可以由此来识别是那种编码。

用过EmEditor这个编辑器的朋友,就应该能体会到这点
hlddn 2004-12-15
  • 打赏
  • 举报
回复
to forlovepb:能解释清楚点儿吗?
forlovepb 2004-12-14
  • 打赏
  • 举报
回复
用types模块
shhgs 2004-12-07
  • 打赏
  • 举报
回复
我没用过其它语言的OS,所以只知道怎样判断中文还是英文的字符串。如果是unicode字符串,用type判断,type(s) == type(u'a'),如果是中文的,可以用unicode(s, 'mbcs')将它转换成unicode的字符串。mbcs表示multi-byte character set,所以我认为不管是日语,韩语还是简体或繁体的中文,它都能自动辨识,毕竟你输入的是当前操作系统默认的编码。
batfree 2004-12-07
  • 打赏
  • 举报
回复
不会,帮你顶一下。不过我记得UNICODE文件的第一个字节是特别的,字符串的话不大清楚。
lofly 2004-12-07
  • 打赏
  • 举报
回复
有人!
但我不会这个问题
hlddn 2004-12-07
  • 打赏
  • 举报
回复
如此冷清?

37,718

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧