首页 > 开发 > Python > 正文

Python字符串处理函数之isascii()函数的使用

2023-04-25 12:32:04
字体:
来源:转载
供稿:网友

这篇文章将介绍Python3.7中新增的一个字符串处理函数isascii()函数,从函数名称上也应该可以判断该函数的作用:判断字符串中的每个字符是否都为ASCII字符。

一、isascii()函数简介

isascii()函数是在Python3.7中新增的一个字符串处理函数,也就是说在3.7之前的版本中是无法使用这个函数的。

isascii()函数的语法格式如下:

str.isascii()

语法中str是待判断的字符串或字符串变量。

该函数没有任何参数。

该函数执行时,如果字符串对象str是空字符串或字符串中每个字符都是ASCII编码的字符,则该函数返回True,否则返回False

ASCII字符是指字符的码点(码点的概念见:Python中的unicode编码格式一文)在 U+0000-U+007F之间的字符。

Python isascii()函数简介

二、isascii()函数使用举例

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中显示的源代码及运行的结果如下图所示:

Python中isascii()函数的使用案例

三、打印出所有ascii字符

下面通过编程输出所有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。

本文(完)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表