使用type()与isinstance()都能判断变量的类型类型
type(a) is types.StringType 与 isinstance(a, str) 效果是一样的,那么有什么区别吗?
使用type()与isinstance()都能判断变量的类型类型
type(a) is types.StringType 与 isinstance(a, str) 效果是一样的,那么有什么区别吗?
4 回答4.4k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
1 回答4.5k 阅读✓ 已解决
1 回答3.8k 阅读✓ 已解决
1 回答2.8k 阅读✓ 已解决
2 回答1.9k 阅读✓ 已解决
1、isinstance()从名字上看,只能够判断实例是否为那种类型,又或者其基类类型(派生类实例中含有基类的信息)。
2、type()则明确显示出该实例的类型(相当于查看该实例的__class__属性),无论这个类由哪一个类派生而来,type所表示的都是直接生成该实例的类的类型。
比较有意思的是type和object这两个对象。
看看这个你就会知道
这两个家伙互为对方的实例。你可以点击这里来了解一下。