python len isalpha 中文小坑
来源:互联网 发布:爱思助手mac版 编辑:程序博客网 时间:2024/06/06 14:05
近期在进行自然语言的处理,在使用len函数和isalpha函数时发现几个坑。现在略述一下,才疏学浅还请大牛批评指正。
len和isalpha函数对于str类型或者unicode类型的英文都有效,但是对于中文就要区别对待了!对于中文来说,在python2.7默认字符编码类型下,一个中文字符占两个(windows环境)或者三个(ubuntu系统)字符,所以此时len函数返回的是:真实字符数目*2或者3,而英文符号还是一个字符,所以len返回真实的英文数目。在unicode编码下,一个中文字符占一个unicode码,所以len返回真实字符数目,同样英文字符也是占一个unicode编码,返回真实字符数目。
isalpha函数是针对python2.7默认字符编码下的字符串设计的,所不适用于unicode编码,在unicode编码下会出错。具体请看下面的代码例子。
一.关于len的例子
上面是在ubuntu中运行的,下面是window中运行的。
二.关于isalpha的例子
三.str(),decode(),encode()的使用区别
我们知道数据类型有:string,int,float等,这些类型相互转换使用str()
string有很多字符编码,ascii,unicode,gbk,这些编码间相互转化使用decode和encode
0 0
- python len isalpha 中文小坑
- python-isalpha(),isdigit()
- isalpha
- isalpha
- isalpha
- isalpha
- isalpha
- isalpha
- python之len函数
- Python len()函数
- Python len()方法
- 【Python】Python List len()方法
- Python的isalpha()函数判断是否中英文
- python count(), lower(), ord(), chr(), isalpha()
- Python的len函数探究
- python中len()的用法
- python中的len()函数
- len
- MySQL数据库之单表查询
- Android中动态获取Drawable中的图片
- poj 3045 Cow Acrobats 【二分】
- 【杭电】[2013]蟠桃记
- spring配置详解-连接池配置
- python len isalpha 中文小坑
- java线程——信号量(Semaphore)+障栅(CyclicBarrier)
- [Android] 使用Fragment创建动态UI
- UVa129 相邻重复子串
- POJ2528 Mayer's posters
- C++拷贝对象
- OpenGL超级宝典7th简体中文-第二章-我们的第一个OpenGL程式
- select @@SERVERNAME
- Java常见问题汇总