我对Python比较陌生。我想要提出一个基本的程序,可以判断参数是否在函数中有一个整数。我不知道该把什么放入空白。我通常不会使用if / in类型配对。函数的基础是:
def is_number(char):
if (somethinghere) in (somethinghere):
return True
else:
return False
结果应该是:
is_number('4')
True
is_number('nothing')
False
答案 0 :(得分:5)
python中的常用方法不是if / else,而是try / except:
def is_number(char):
try:
int(char)
except ValueError:
return False
else:
return True
答案 1 :(得分:3)
有很多方法可以做到这一点,但我认为这个练习建议您使用这种方法:
'a' in 'abcde'
Out[1]: True
'f' in 'abcde'
Out[2]: False
您应该考虑如何将其应用于您的具体示例。
答案 2 :(得分:1)
def is_number(char):
return char.isdigit()
如果您正在处理正数,可以使用str.isdigit
您可能希望使用try/except
进行更常规的使用,但使用float
而不是int
或十进制数字将不被视为数字:
def is_number(char):
try:
float(char)
except ValueError:
return False
return True
如果返回False
,您也不需要代码中的其他内容,您的代码将不再继续使用。
使用return char.isdigit()
时结果相同,结果将是True
或False
,因此不需要if/else
。
In [4]: is_number('4.3')
Out[4]: True
In [5]: is_number('0.3')
Out[5]: True
In [6]: is_number('03')
Out[6]: True
In [7]: is_number('foo')
Out[7]: False