如果要判断某路径是否包换中文,可以用正则表达式判断是否含有双字节字符
>>> import re
>>> research(r'[^\x00-\xff]',u'asasd你好asdf')
<_sreSRE_Match object at 0x349019f8>
>>> research(r'[^\x00-\xff]',u'asasd2323)(#(&93asdf')
如果字符串含有中文的话research(r'[^\x00-\xff]', str)就会有返回匹配结果,否则当字符串都是单字节的ASCII字符串的话,就会返回None,注意字符串需要为unicode编码
Python代码里的中文
代码第一行(如果有脚本标记则是第二行)可以按照PEP8形式指定本代码文件的编码类型。若不指定则按照ascii(py2x)或utf-8(py3)
你需要了解的内容
清楚知道包含中文的文件是用的什么编码
清楚知道自己输出端(命令行?html?GUI?)用什么编码
清楚知道编码的基本知识
你需要的python相关内容
以python27x为例:
print/filewrite等实质上只输出str对象,如果输出内容不是str对象,则使用str函数进行转换
str函数是个壳,实质是调用对象方法__str__
encode函数是将一个unicode类按照指定的编码(如果不指定则使用defaultencoding)转换为不带编码标记的str类
decode函数是将一个str类按照指定编码(如果不指定则使用defaultencoding)转换为使用utf-8编码的unicode类
直接print一个容器(dict/list/tuple)的时候不会对其中的字符串进行编码,因此看到的非ascii字符集内容将会以\xAA或者\uAAAA之类的形式输出
Python3中,str行为与py2的unicode行为一致;bytes行为与py2的str行为一致。
ascii字符长度只有8位,而其他编码的字符往往有16位或32位 利用这一点可以进行判断 将字符串解码成unicode,判断长度是否与解码前相同 # -- coding: utf-8 --a = '中国123'b = adecode('utf-8')print a,len(a) == len(b)a = 'abc'b = adecod
区别在于ord()函数是Python中的一个库函数,用于从给定字符值中获取数字值,它接受一个字符并返回一个整数,即用于将字符转换为整数,即用于获取ASCII给定字符的值,input()函数在python中是代表输入的意思,简单的理解就是用户通过键盘输入的内容,python程序可以接收到。这是人机交互的重要窗口。默认是按文本方式处理的,如果要输入的是数值,需要用int()或者float()函数处理下。
库函数。
根据百度智能精选资料显示,ord函数是Python中的一个库函数,它用于从给定的字符值中获取数字值,它接受一个字符并返回一个整数,即用于将字符转换为整数,即用于获取a的ASCII值。
库函数是把函数放到库里,供别人使用的一种方式。
以上就是关于python判断 纯ASCII字符串 怎么做全部的内容,包括:python判断 纯ASCII字符串 怎么做、[Python][爬虫] 爬出的内容如图,编码方式是'ascii',那其中的中文字节去哪儿了求教这种要怎么处理、python 怎么判断ascii字符串问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)