"Author's Homepage": Shibie Sanri wyx
"Author's Profile": CSDN top100, Alibaba Cloud Blog Expert, Huawei Cloud Share Expert, Network Security High-quality Creator
"Recommended Column": Xiaobai Zero Basic "Python Beginner to Master"
Detailed explanation of isalnum function
isalnum() can determine whether the characters of the string are all "letters" and "numbers" .
grammar
string.isalnum()
return value
- Returns True if all characters in the string are numbers or letters
- Otherwise return False
Example: Determine whether a string is composed of letters or numbers
print('hello'.isalnum())
output:
True
1. Cases containing letters and numbers
Contains only "numbers" , which are defined as[0-9]
print('0123456789'.isalnum())
output:
True
Contains only "letters" , both uppercase and lowercase, the definition of a letter is[a-z,A-Z]
print('abcABC'.isalnum())
output:
True
Contains "Numbers" and "Letters"
print('123abcABC'.isalnum())
output:
True
2. Situation of Chinese characters and other languages
Not only English (English alphabet), but also Chinese, Japanese, Korean, etc., can be judged.
Contains only "Chinese characters"
print('汉字'.isalnum())
output:
True
Contains only 'Japanese' characters
print('何だよ'.isalnum())
output:
True
Contains only 'Korean' characters
print('한자'.isalnum())
output:
True
Including English, Chinese, Korean, Japanese
print('12aA汉だ한'.isalnum())
output:
True
The language of "other countries" also supports judgments, so I won't list them here.
If you want to distinguish between Chinese and English, you can code and then judge
print("汉字".isalnum())
print("汉字".encode().isalnum())
print("12aA汉だ한".encode().isalnum())
print("12aA".encode().isalnum())
output:
True
False
False
True
From the output results, it can be found that it returns True only if it contains letters and numbers, and returns False when it contains Chinese characters.
Tip: Python3 uses Unicode encoding by default, so Chinese characters will return True; encode() default encoding is UTF-8, after encoding into utf8, Chinese characters will not return True.
3. Empty strings, tabs, special symbols, punctuation marks
Returns False when the string contains empty strings, tabs, special symbols, and punctuation marks
contains "empty string"
print('12 '.isalnum())
print(''.isalnum())
print(' '.isalnum())
output:
False
False
False
Contains green "tabs"
print("\\".isalnum())
print('\n'.isalnum())
print('\na'.isalnum())
output:
False
False
False
Contains special symbols, punctuation marks
print("1+1".isalnum())
print('1,'.isalnum())
print('“1”'.isalnum())
output:
False
False
False