Python string isalnum() function returns True
if it’s made of alphanumeric characters only. A character is alphanumeric if it’s either an alpha or a number.
If the string is empty, then isalnum() returns False
.
Python string isalnum() example
s = 'HelloWorld2019'
print(s.isalnum())
Output: True
s = 'Hello World 2019'
print(s.isalnum())
Output: False
because whitespace is not an alphanumeric character.
s = ''
print(s.isalnum())
Output: False
because it’s an empty string.
s='A.B'
print(s.isalnum())
s = '10.50'
print(s.isalnum())
Output:
False
False
The string contains period (.) which is not an alphanumeric character.
s = 'çåøÉ'
print(s.isalnum())
Output: True
because all these are Alpha characters. Alphabetic characters are those characters defined in the Unicode character database as “Letter”, i.e., those with general category property being one of “Lm”, “Lt”, “Lu”, “Ll”, or “Lo”.
Printing all Alphanumeric characters in Python
We can use unicode
module to check if a character is alphanumeric or not. Here is the program to print all the alphanumeric unicode characters.
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}')
Output:
...
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.
Reference: Official Documentation