Python|检查 ASCII字符串
很多时候,希望使用只包含字母的字符串,而其他特殊字符是不可取的,有时这个任务成为过滤字符串的重点,因此需要检查字符串是否是整个 ASCII 的方法。让我们讨论可以执行此任务的某些方式。
方法#1:使用ord() + all()
这种方法的组合可以用来实现理想的任务。在这种方法中,我们搜索所有字符串并检查每个字符,即 ASCII字符范围内的值。
# Python3 code to demonstrate
# Check for ASCII string
# using all() + ord()
# initializing string
test_string = "G4G is best"
# printing original string
print("The original string : " + str(test_string))
# using all() + ord()
# Check for ASCII string
res = all(ord(c) < 128 for c in test_string)
# print result
print("Is the string full ASCII ? : " + str(res))
输出 :
The original string : G4G is best
Is the string full ASCII ? : True
方法 #2:使用lambda + encode()
使用上述功能也可以完成此任务。在这种组合中,lambda函数用于将大小检查逻辑扩展到整个字符串,并使用编码函数检查原始字符串和编码字符串的大小是否匹配。
# Python3 code to demonstrate
# Check for ASCII string
# using lambda + encode()
# initializing string
test_string = "G4G is best"
# printing original string
print("The original string : " + str(test_string))
# using lambda + encode()
# Check for ASCII string
res = lambda ele: len(ele) == len(ele.encode())
# print result
print("Is the string full ASCII ? : " + str(res(test_string)))
输出 :
The original string : G4G is best
Is the string full ASCII ? : True