国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Python > 正文

Python isprintable()函數檢測字符串中的每個字符是否都為可打印字符

2023-04-26 12:04:38
字體:
來源:轉載
供稿:網友

Python字符串處理函數isprintable()的作用是檢測字符串中的所有字符是否都為可打印字符,如果字符串中的每個字符都為可打印字符或字符串為空的話,就會返回 True ,否則返回 False 。

一、isprintable()語法格式

string_object.isprintable()

該函數沒有參數,string_object 是要進行檢測的字符串或字符串變量。

該函數的返回值為邏輯值:TrueFalse .

二、什么是可打印字符

要知道這個問題,我們只需要弄清楚哪些字符屬于非可打印字符即可。

根據官方文檔描述(str.isprintable()),非可打印字符是指在Unicode字符庫中被定義為"Other""Separator"的字符,但空格(0x20)除外。

同時官方文檔也說了,在Python中,可打印字符意味著在對字符串調用repr()函數時,不會被轉義的字符。

三、isprintable使用舉例

1、基本使用的例子

>>> s1 = "Hello Python."
>>> print(s1.isprintable())
True
>>> s2 = "武林網VEVB"
>>> print(s2.isprintable())
True
>>>

結果都為True.

空格和正常語言中的字符都是可打印的字符。

2、空字符串

>>> s = ''
>>> print(s.isprintable())
True
>>>

空字符串被認為是可打印的

3、轉義字符

>>> s1 = 'Python/tJava'
>>> print(s1.isprintable())
False
>>> s2 = 'Python/rJava'
>>> print(s2.isprintable())
False
>>>

字符串中的  /t/r 等轉義字符被認為是不可打印字符。更多常見的的轉義字符的例子見下圖:

Python isprintble函數:轉義字符

4、并非所有的轉義字符都是不可打印字符

>>> s1 = 'I/'m a student'
>>> print(s1.isprintable())
True
>>> s2 = "She said:/"Go away!/""
>>> print(s2.isprintable())
True
>>> s3 = "Python /u0061 Java"
>>> print(s3)
Python a Java
>>> print(s3.isprintable())
True
>>> s4 = "D://"
>>> print(s4.isprintable())
True
>>> 

上面的例子說明,像單引號,雙引號,反斜杠這種有實質性字符的是可打印字符,而/u0061是字母 'a' 的Unicode碼,當然也是可打印字符。

5、輸出所有非可打印字符的Unicode碼

要想知道 Unicode 字符數據庫中哪些編碼屬于不可打印字符,可以使用下面的程序來輸出查看。

icnt = 0
for ucode in range(2 ** 16):
    ch = chr(ucode)
    if not ch.isprintable():
        print(u'{:04x}'.format(ucode))
        icnt += 1
print(f'非可打印字符的數量為:{icnt}')
 

輸出情況:

0000
0001
0002
...
fffb
fffe
ffff
非可打印字符的數量為:10215

Python isprintable函數

本文(完)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 通许县| 元氏县| 离岛区| 都匀市| 如东县| 鹤峰县| 巫山县| 巴南区| 乌拉特中旗| 西乌珠穆沁旗| 武山县| 麻城市| 巢湖市| 铅山县| 南涧| 岳普湖县| 城步| 沅陵县| 徐州市| 璧山县| 堆龙德庆县| 凯里市| 集安市| 呼和浩特市| 沁水县| 陕西省| 宿松县| 鱼台县| 马龙县| 彭阳县| 娱乐| 板桥市| 泸西县| 南溪县| 冕宁县| 天气| 肥东县| 开阳县| 饶平县| 托克逊县| 桃园市|