所以我想要的是让我的代码了解我的输入中是否有数字,如果有,则意味着输出“正确”,但如果没有,那么它将输出“不正确”怎么办我确实做到了这一点。所以它知道输入中是否有整数。任何帮助表示赞赏
import re
yourString=input()
number = re.search(r'\d+', yourString).group()
if number == True:
print("Correct")
else:
print("Incorrect")
最佳答案
根据https://docs.python.org/3/library/re.html#match-objects你有一个微妙的错误。
该语句不应为 if number == True:
应该是if number:
,原因是值编号被测试为 True
如果有任何匹配,并且是 None
如果没有匹配项。
即
import re
yourString=input()
number = re.search(r'\d+', yourString)
if number:
print("Correct")
group = number.group()
else:
print("Incorrect")
注意,有点奇怪
import re
yourString=input()
number = re.search(r'\d+', yourString)
if number:
print(number == True)
group = number.group()
else:
print("Incorrect")
打印 false,因此 number 不是值 true,它会覆盖 __bool__
。请参阅https://docs.python.org/3/reference/datamodel.html#object.bool了解更多信息
关于Python - 正则表达式 - True 或 False,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50401430/