判断字符是否为中文

UNICODE与UTF-8的联系

字符编码笔记:ASCII,Unicode和UTF-8

    http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.htmlhtml

判断字符是否为中文

采用unicode编码格式下:python

\u4e00-\u9fa5多是用来判断是否是中文的一个条件。 \u4E00 -- \u9FA5函数

def __call__(self,value):
        if not all([True if i >= u'\u4e00' and i <= u'\u9fa5' else False for i in value]):
            raise ValidationError(self.message, code=self.code)

英文字母ASCII值

ascii值 图形
48 - 57 '0' - '9'
65 - 90 'A’- 'Z'
97 - 122 'a' - 'z'

 

python中字符转换常见函数:

进制转换

int(x) # 字符串/整数(以10为基底,即字符串包含的字符都为‘0’-‘9’) --> 十进制整数
       # int('10') --> 10
int(x, base) # 以base为基底的字符串 --> 十进制整数
             # base取值为[2 - 36] a-z/A-Z表示10-35
             # if base = 2, 则字符串可包含'0b'/'0B'         int('0b11', 2) --> 2
             #           8              '0o'/'0O'/'0'     int('0O75', 8) --> 61
             #           16             '0x'/'0X'         int('0xA5', 16) --> 165


bin() # 整数 --> 其二进制字符串(以‘0b’开头),若是输入不是int对象,则它必须返回该对象的__index__()方法
      # bin(25) --> '0b11001'

oct() # 整数 --> 其八进制字符串(以‘0o’开头)
      # oct(25) --> '0o31'

hex() # 整数 --> 其十六进制字符串(以‘0x’开头)
      # hex(25) --> '0x19'

字符和unicode编码转换

ord()  # 若是参数为单字符,则返回ascii表该字符对应的整数
       # 若是参数为形如 u'\u0061', 则返回该unicode字符的字节值
       # ord('a') --> 97
       # ord(u'\u0061') --> 97

chr(i) # 整数(取值为[0,255]) --> 单字字符,该字符的ASCII码为整数i
       # chr(97) --> 'a'

unichr(i) # 整数 --> Unicode码为整数i的Unicode字符 (python3中无此函数)
          # unichr(97) --> u'a'
相关文章
相关标签/搜索