参数检测isinstance:
def add(x, y):
if isinstance(x, (int, float)) and isinstance(y, (int, float)):
# x,y只能是int或float
return x + y
else:
print('Error:')
res = add(2.5,2)
print(res)
输出:
4.5
将输入参数变为字符串型
练习
编写函数,计算字符串匹配的准确率(字母相同的个数占第一句的多少百分比)
1.只能是字符串型
2.第一句不能比第二句短
def Rate(orgin,userInput):
if not (isinstance(orgin,str) and isinstance(userInput,str)):
print('The tow parameters must be string')
return
# 返回空
if len(orgin) < len(userInput):
print('Sorry.')
return
right = 0
for orgin_char,user_char in zip(orgin,userInput):
if orgin_char == user_char:
right += 1
return right/len(orgin)
a = 'have a nice day'
b = 'Have b aaaa DAy'
print(Rate(a,b))