הפונקציה isalnum() של מחרוזת ב-Python מחזירה את הערך True אם המחרוזת מורכבת מתווים אלפא-נומריים בלבד. תו הוא אלפא-נומרי אם הוא הן אות הן מספר. אם המחרוזת ריקה, אז isalnum() תחזיר את הערך False.
דוגמה על isalnum() ב-Python
s = 'HelloWorld2019'
print(s.isalnum())
פלט: True
s = 'Hello World 2019'
print(s.isalnum())
פלט: False
מכיוון שרווח אינו תו אלפא-נומרי.
s = ''
print(s.isalnum())
פלט: False
מכיוון שהמחרוזת ריקה.
s='A.B'
print(s.isalnum())
s = '10.50'
print(s.isalnum())
פלט:
False
False
המחרוזת מכילה נקודה (.) שאינה תו אלפא-נומרי.
s = 'çåøÉ'
print(s.isalnum())
פלט: True
מכיוון שכל אלו הם תווים אלפא. תווים אלפביתיים הם אלו המוגדרים במסד התווים היוניקוד כ "אות", כלומר אלו שהמאפיין הכללי שלהם הוא "Lm", "Lt", "Lu", "Ll" או "Lo".
הדפסת כל התווים אלפא-נומריים ב-Python
ניתן להשתמש במודול unicode
כדי לבדוק האם תו הוא אלפאנומרי או לא. הנה התוכנית להדפסת כל התווים ביוניקוד שהם אלפאנומריים.
import unicodedata
count = 0
for codepoint in range(2 ** 16):
ch = chr(codepoint)
if ch.isalnum():
print(u'{:04x}: {} ({})'.format(codepoint, ch, unicodedata.name(ch, 'UNNAMED')))
count = count + 1
print(f'Total Number of Alphanumeric Unicode Characters = {count}')
פלט:
...
ffd7: ᅲ (HALFWIDTH HANGUL LETTER YU)
ffda: ᅳ (HALFWIDTH HANGUL LETTER EU)
ffdb: ᅴ (HALFWIDTH HANGUL LETTER YI)
ffdc: ᅵ (HALFWIDTH HANGUL LETTER I)
Total Number of Alphanumeric Unicode Characters = 49567
I have provided only partial output because the number of alphanumeric unicode characters is huge.
ניתן לבדוק דוגמאות נוספות בפייתון ממאגר ה־GitHub שלנו.
הפנייה: תיעוד רשמי
Source:
https://www.digitalocean.com/community/tutorials/python-string-isalnum