如何检查用户输入是否严格按字母顺序排列?
How can I check if a users input is strictly alphabetical?
我目前正在研究一个项目的伪代码,我刚刚想到,虽然我有办法检查用户输入是否严格为数字,但我不知道如何检查输入是否是严格按字母顺序排列。
例如:
def valueCheck_Int(question):
while (True):
try:
return int(input(question))
except:
question = "That is not a valid integer, try again: "
def main():
userInput = valueCheck_Int("Enter an integer: ")
print(userInput)
main()
这段代码检查用户的输入是否严格为数字,并且只会在用户输入整数之前中断循环。
有没有可能的方法来做到这一点,但字符串输入是按字母顺序排列的,根本没有数字?
Python中的str
类型有检查的方法,你不需要尝试,除非完全没有。
这些方法称为 isnumeric
和 isalpha
。
isnumeric
- 如果一个字符串是一个数字,它将 return 为真,否则 return 为假。
isalpha
- 如果一个字符串是按字母顺序排列的,它将 return 为真,否则 return 为假。
代码示例:
string = 'alphabetical'
if string.isnumeric():
print('String is numeric!, it contains numbers and valid for integer casting!')
elif string.isalpha():
print('String is alpha!, it contains alphabetical letters.')
我目前正在研究一个项目的伪代码,我刚刚想到,虽然我有办法检查用户输入是否严格为数字,但我不知道如何检查输入是否是严格按字母顺序排列。
例如:
def valueCheck_Int(question):
while (True):
try:
return int(input(question))
except:
question = "That is not a valid integer, try again: "
def main():
userInput = valueCheck_Int("Enter an integer: ")
print(userInput)
main()
这段代码检查用户的输入是否严格为数字,并且只会在用户输入整数之前中断循环。
有没有可能的方法来做到这一点,但字符串输入是按字母顺序排列的,根本没有数字?
Python中的str
类型有检查的方法,你不需要尝试,除非完全没有。
这些方法称为 isnumeric
和 isalpha
。
isnumeric
- 如果一个字符串是一个数字,它将 return 为真,否则 return 为假。
isalpha
- 如果一个字符串是按字母顺序排列的,它将 return 为真,否则 return 为假。
代码示例:
string = 'alphabetical'
if string.isnumeric():
print('String is numeric!, it contains numbers and valid for integer casting!')
elif string.isalpha():
print('String is alpha!, it contains alphabetical letters.')