Python 如何检查字符串是否仅包含数字
要检查Python字符串是否仅包含数字,我们可以使用内置的isdigit()方法。该方法返回True,如果字符串中的所有字符都是数字,否则返回False。
下面是一个示例代码片段,展示了如何使用isdigit()方法:
检查字符串是否仅包含数字
示例
在这个示例中,我们首先定义一个名为my_string的字符串,它只包含数字。然后我们使用isdigit()方法来检查my_string是否只包含数字。由于它是这样,输出将是”The string contains only digits!”。
my_string = "1234"
if my_string.isdigit():
print("The string contains only digits!")
else:
print("The string does not contain only digits.")
输出
The string contains only digits!
现在让我们看一个包含非数字字符的示例:
示例
在这个示例中,字符串my_string包含非数字字符(”a”和”b”)。当我们运行代码时,输出将是”The string does not contain only digits.”,因为isdigit()方法的返回值为False。
my_string = "12ab"
if my_string.isdigit():
print("The string contains only digits!")
else:
print("The string does not contain only digits.")
输出
The string does not contain only digits.
示例
在这个例子中,我们首先使用input()函数提示用户输入一个字符串。然后我们使用isdigit()方法检查字符串是否只包含数字。如果字符串只包含数字,我们打印”The string contains only digits.”。否则,我们打印”The string does not contain only digits.”
input_str = input("Enter a string: ")
if input_str.isdigit():
print("The string contains only digits.")
else:
print("The string does not contain only digits.")
输出
Enter a string: 357sfy
The string does not contain only digits.
示例
在这个示例中,我们定义了一个叫做contains_only_digits()的函数,它接受一个字符串作为输入,并使用for循环和isdigit()方法检查字符串是否只包含数字。如果字符串只包含数字,函数返回True。否则,返回False。
然后,我们定义一个只包含数字的字符串my_string,并将my_string作为输入调用contains_only_digits()函数。由于my_string只包含数字,输出将为“The string contains only digits!”。
def contains_only_digits(input_str):
for char in input_str:
if not char.isdigit():
return False
return True
my_string = "1234"
if contains_only_digits(my_string):
print("The string contains only digits!")
else:
print("The string does not contain only digits.")
输出
The string contains only digits!
示例
在这个例子中,我们使用re模块来检查一个字符串是否只包含数字。我们定义了一个名为my_string的字符串,其中包含非数字字符(”a”和”b”)。然后我们使用re.fullmatch()函数来检查my_string是否只包含数字。
r”\d+”正则表达式模式匹配一个或多个数字。如果my_string与这个模式匹配,它只包含数字,输出将是”The string contains only digits!”。否则,输出将是”The string does not contain only digits.”。
import re
my_string = "12ab"
if re.fullmatch(r"\d+", my_string):
print("The string contains only digits!")
else:
print("The string does not contain only digits.")
输出
The string does not contain only digits.
示例
在这个例子中,我们使用re模块来检查一个字符串是否只包含数字。我们定义了一个名为my_string的字符串,其中包含所有的数字字符(123456)。然后我们使用re.search()函数来检查my_string是否只包含数字。
r”\d+”正则表达式模式匹配一个或多个数字。如果my_string匹配这个模式,它就只包含数字,输出将是”The string contains only digits!”。否则,输出将是”The string does not contain only digits.”。
import re
my_string = "123456."
if re.search("\d+", my_string):
print("The string contains only digits.")
else:
print("The string does not contain only digits.")
输出
The string contains only digits.
示例
在这个例子中,我们使用re模块来检查一个字符串是否只包含数字。我们定义了一个叫做my_string的字符串,其中包含非数字字符(“c”,“d”)。然后我们使用re.findall()函数来检查my_string是否只包含数字。
正则表达式模式r”\d+”匹配一个或多个数字。如果my_string匹配这个模式,它就只包含数字,输出将是”The string contains only digits!”。否则,输出将是”The string does not contain only digits.”。
import re
my_string = "5678cd."
if re.findall("r\d+", my_string):
print("The string contains only digits.")
else:
print("The string does not contain only digits.")
输出
The string does not contain only digits.