因此,我已经使用isdigit
定义了一个字符串函数。该函数应该为正数返回true,为单词和负数返回false。但是对于带小数的数字则适用。我知道isdigit
已经检查了正数,但不允许十进制使用。
我无法发布我的代码,因为这是一项作业,我只想对此有所帮助。我不能使用try
和except
。例如,我的回报仅为isdigit
,它适用于正数和无数字(单词),但是不适用于小数。我正在尝试仅针对像1.2
和44.2
这样的真实小数而不是像22.22.22
那样使它成为小数。不使用try
和except
怎么办?
答案 0 :(得分:0)
.
不是数字,因此,如果字符串包含一个数字,则.isdigit()
方法将返回False
。您可以先删除foo.replace(".", "", count=1).isdigit()
之类的内容,然后再进行检查。对于更复杂的字符串模式检查,您将需要使用re
模块,该模块可用于使用正则表达式指定任意数字格式。