这篇文章将介绍Python3.7中新增的一个字符串处理函数isascii()函数,从函数名称上也应该可以判断该函数的作用:判断字符串中的每个字符是否都为ASCII字符。
isascii()函数是在Python3.7中新增的一个字符串处理函数,也就是说在3.7之前的版本中是无法使用这个函数的。
isascii()函数的语法格式如下:
str.isascii()
语法中str是待判断的字符串或字符串变量。
该函数没有任何参数。
该函数执行时,如果字符串对象str是空字符串或字符串中每个字符都是ASCII编码的字符,则该函数返回True,否则返回False。
ASCII字符是指字符的码点(码点的概念见:Python中的unicode编码格式一文)在 U+0000-U+007F之间的字符。
str1 = "I Love China!"
re1 = str1.isascii()
print("re1=", re1)
str2 = "abc123"
re2 = str2.isascii()
print("re2=", re2)
str3 = "中国(China)"
re3 = str3.isascii()
print("re3=", re3)
str4 = "www.VeVb.com"
re4 = str4.isascii()
print("re4=", re4)
str5 = "@1 23.',#$%^&*()~"
re5 = str5.isascii()
print("re5=", re5)
输出结果如下:
re1= True
re2= True
re3= False
re4= True
re5= True
在Python3.8.2中显示的源代码及运行的结果如下图所示:
下面通过编程输出所有ASCII字符及数量。
icnt = 0
for ucode in range(2 ** 16):
ch = chr(ucode)
if ch.isascii():
print(u'{:04x}'.format(ucode), ":", ch)
icnt += 1
print(f'ASCII字符的数量为:{icnt}')
输出结果如下:
0000 :
0001 :
0002 :
0003 :
0004 :
0005 :
0006 :
0007 :
0008 :
0009 :
000a :
000b :
000c :
000d :
000e :
000f :
0010 :
0011 :
0012 :
0013 :
0014 :
0015 :
0016 :
0017 :
0018 :
0019 :
001a :
001b :
001c :
001d :
001e :
001f :
0020 :
0021 : !
0022 : "
0023 : #
0024 : $
0025 : %
0026 : &
0027 : '
0028 : (
0029 : )
002a : *
002b : +
002c : ,
002d : -
002e : .
002f : /
0030 : 0
0031 : 1
0032 : 2
0033 : 3
0034 : 4
0035 : 5
0036 : 6
0037 : 7
0038 : 8
0039 : 9
003a : :
003b : ;
003c : <
003d : =
003e : >
003f : ?
0040 : @
0041 : A
0042 : B
0043 : C
0044 : D
0045 : E
0046 : F
0047 : G
0048 : H
0049 : I
004a : J
004b : K
004c : L
004d : M
004e : N
004f : O
0050 : P
0051 : Q
0052 : R
0053 : S
0054 : T
0055 : U
0056 : V
0057 : W
0058 : X
0059 : Y
005a : Z
005b : [
005c : /
005d : ]
005e : ^
005f : _
0060 : `
0061 : a
0062 : b
0063 : c
0064 : d
0065 : e
0066 : f
0067 : g
0068 : h
0069 : i
006a : j
006b : k
006c : l
006d : m
006e : n
006f : o
0070 : p
0071 : q
0072 : r
0073 : s
0074 : t
0075 : u
0076 : v
0077 : w
0078 : x
0079 : y
007a : z
007b : {
007c : |
007d : }
007e : ~
007f :
ASCII字符的数量为:128
从上面的输出结果可以看出,ascii编码的字符共有128个,其编码范围从u0000~u007f。
本文(完)
新闻热点
疑难解答