之前一直想找到一个模块,针对字符判断是什么字符集编码的库

网上有chardet的blog,发现自己的环境有这个库,于是就做了测试

>>> import chardet
>>> a = "也有".decode('gbk')
>>> a
u'\u6d94\u71b8\u6e41'
>>> a = "也有".decode('gbk').encode('gbk')
>>> a
'\xe4\xb9\x9f\xe6\x9c\x89'
>>> chardet.detect(a)
{'confidence': 0.7525, 'language': '', 'encoding': 'utf-8'}
>>> print(a)
也有>>> a = "也有".decode('gbk').encode('gbk')
>>> a = u"也有".encode('gbk')
>>> a
'\xd2\xb2\xd3\xd0'
>>> chardet.detect(a)
{'confidence': 0.7679697235616183, 'language': 'Russian', 'encoding': 'KOI8-R'}

In [5]: a = "asd算法".encode('utf-8').decode('gbk')

In [6]: import chardet

In [7]: chardet.detect(a)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-7-45a625c5d441> in <module>()
----> 1 chardet.detect(a)

c:\python3.6.3\lib\site-packages\chardet\__init__.py in detect(byte_str)
32 if not isinstance(byte_str, bytes):
33 raise TypeError('Expected object of type bytes or bytearray, got: '
---> 34 '{0}'.format(type(byte_str)))
35 else:
36 byte_str = bytearray(byte_str)

TypeError: Expected object of type bytes or bytearray, got: <class 'str'>

In [8]: a
Out[8]: 'asd绠楁硶'

总结发现不是很准,放弃使用

python 字符编码判断 chardet评测的更多相关文章

  1. [转] Python 字符编码判断

    转自:http://www.cnblogs.com/dkblog/archive/2011/03/02/1980644.html 法一: isinstance(s, str) 用来判断是否为一般字符串 ...

  2. Python 字符编码判断

    题记 在获取中文字符的时候,如果出现乱码的情况,我们需要了解当前的字符串的编码形式.使用下面两种方法可以判断字符串的编码形式. 法一: isinstance(s, str) 用来判断是否为一般字符串 ...

  3. 转1:Python字符编码详解

    Python27字符编码详解 声明 一 字符编码基础 1 抽象字符清单ACR 2 已编码字符集CCS 3 字符编码格式CEF 31 ASCII初创 311 ASCII 312 EASCII 32 MB ...

  4. Python字符编码详解,str,bytes

    什么是明文 “明文”是可以是文本,音乐,可以编码成mp3文件.明文可以是图像的,可以编码为gif.png或jpg文件.明文是电影的,可以编码成wmv文件.不一而足. 什么是编码?把明文变成计算机语言 ...

  5. python --- 字符编码学习小结(二)

    距离上一篇的python --- 字符编码学习小结(一)已经过去2年了,2年的时间里,确实也遇到了各种各样的字符编码问题,也能解决,但是每次都是把所有的方法都试一遍,然后终于正常.这种方法显然是不科学 ...

  6. 转2:Python字符编码详解

    1. 字符编码简介 1.1. ASCII ASCII(American Standard Code for Information Interchange),是一种单字节的编码.计算机世界里一开始只有 ...

  7. python 字符编码练习

    通过下面的练习,加深对python字符编码的认识 # \x00 - \xff 256个字符 >>> a = range(256)>>> b = bytes(a) # ...

  8. Python字符编码讲解

    声明:本文参考 Python字符编码详解 在计算机中我们不管用什么语言和程序,最终数据在计算机中的都是字节码(也就是01形式)的形式存在的,如果 计算机直接把字节码显示在屏幕上,很明显一般人看不懂字节 ...

  9. 深入理解Python字符编码--转

    http://blog.51cto.com/9478652/2057896 不论你是有着多年经验的 Python 老司机还是刚入门 Python 不久,你一定遇到过UnicodeEncodeError ...

随机推荐

  1. php 生成xml文件

    <?php class Xml{        /*      *  $aData     要格式化的数组      *  $path      xml信息要写入的文件路径     *  $ve ...

  2. acm--博弈入门2(P/N分析)--(HDU 1847 HDU 2188 HDU 3863)

    P/N理论 分析博弈时可以用P/N分析法 具体如下: P点:即必败点,某玩家位于此点,只要对方无失误,则必败: N点:即必胜点,某玩家位于此点,只要自己无失误,则必胜. 必败态:一定输 必胜态:一定赢 ...

  3. BZOJ2130 : 魔塔

    考虑从$0$到$n$枚举$A$的通关楼层. 设$f[i]$表示$B$通关$i$层时$C$最多能得到多少金币,因为金币数非负,所以也可以看作最多通关多少层. 当$A$的通关楼层往上多$1$的时候,这把钥 ...

  4. HashMap实现原理(jdk1.7/jdk1.8)

    HashMap的底层实现: 1.简单回答 JDK1.7:HashMap的底层实现是:数组+链表  JDK1.8:HashMap的底层实现是:数组+链表/红黑树     为什么要红黑树?  红黑树:一个 ...

  5. bzoj 1006

    http://www.cnblogs.com/zxfx100/archive/2011/03/23/1993055.html https://wenku.baidu.com/view/07f4be19 ...

  6. weblogic 下异常 org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken

    项目之前在 Tomcat 环境下一直都正常运行,今天应客户要求需要迁移到 webLogic 10.3.6 下, 部署后竟然抛出了 org.hibernate.QueryException: Class ...

  7. web的几种返回顶部

    回到顶部backtoTop 滚动回到顶部 jquery/js效果还不错!支持现代浏览器包括 ie6.position: absolute;和fixed.两种方法! 一,jQuery方法的backtoT ...

  8. __c语言__测一段代码的运行时间

    2017-09-16 13:35:56 感觉很实用. /************************************** time ./a.out 命令所花费的real时间.user时间和 ...

  9. Mac/Ubuntu下的数据建模工具PDMan,替代PowerDesigner

    PowerDesigner我使用过用Wine在Linux和Mac下用,但总有些缺陷,用Navicat却发觉没有Linux版本的: 一般关心的问题主要有如下: 1.数据库的关系设计图. 2.导出数据库脚 ...

  10. mysql -- this is incompatible with sql_mode=only_full_group_by

    select @@GLOBAL.sql_mode; set @@GLOBAL.sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ER ...