python如果想测试变量的类型、可以使用_如何测试变量类型?

如果第一个测试为真,则需要跳过第二个测试。参数之一是字符串,该字符串不能转换为整数,因为Adieu由字母组成,而不是数字。在

可以使用elif代替if:if type(varA) == type('s')) or (type(varB) == type('s')):

print "string involved"

elif int(varA)>int(varB):

print "bigger"

elif (int(varA)

print "smaller"

else:

print "equal"

不过,您根本不需要将varA和{}转换为整数,因为您的第一个测试已经确定这两个都不是字符串,而且我碰巧知道您正在执行的赋值只传递字符串或整数:

^{pr2}$

接下来,当您可以通过使用str直接引用该测试的结果时,不必使用type('s');如果要使用type(),则应该在此处测试标识而不是相等:if type(varA) is str or type(varB) is str:

print "string involved"

elif int(varA)>int(varB):

print "bigger"

elif (int(varA)

print "smaller"

else:

print "equal"

不过,使用isinstance()来测试类型几乎总是更好的,因为这样可以让子类也通过测试:

^{pr2}$

接下来,当您可以通过使用str直接引用该测试的结果时,不必使用type('s');如果要使用type(),则应该在此处测试标识而不是相等:if isinstance(varA, str) or isinstance(varB, str):

print "string involved"

elif varA > varB:

print "bigger"

elif varA < varB:

print "smaller"

else:

print "equal"

我强烈怀疑你的作业要求你创建一个函数,返回结果,而不是打印。在这种情况下,您需要改用return语句:if isinstance(varA, str) or isinstance(varB, str):

return "string involved"

elif varA > varB:

return "bigger"

elif varA < varB:

return "smaller"

else:

return "equal"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值