python怎么判断变量的类型

  介绍

这篇文章将为大家详细讲解有关python怎么判断变量的类型,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

python的数据类型有:数字(int),浮点(浮动),字符串(str),列表(列表),元组(tuple),字典(东西),集合(套)

一般通过以下方法进行判断:

1, isinstance(参数1,参数2)

描述:该函数用来判断一个变量(参数1)是否是已知的变量类型(参数2)类似于式()

参数1:变量

参数2:可以是直接或间接类名,基本类型或者由它们组成的元组。

返回值:如果对象的类型与参数二的类型(classinfo)相同则返回真,否则返回假

例子:

#判断变量类型的函数   def typeof(变量):   类型=没有   如果isinstance(变量,int):   类型=癷nt"   str elif isinstance(变量):   类型=皊tr"   浮动elif isinstance(变量):   类型=癴loat"   elif isinstance(变量列表):   类型=發ist"   元组elif isinstance(变量):   类型=皌uple"   dict elif isinstance(变量):   类型=癲ict"   elif isinstance(变量,设置):   类型=皊et"   返回类型   #返回变量类型   def方法(变量):   arr={“int":“整数“,“float":“浮点“,“str":“字符串“,“list":“列表“,“tuple":“元组“,“dict":“字典“,“set":“集合“}   vartype=typeof(变量)   如果不是(vartype arr):   返回“未知类型”;   返回arr [vartype]      #判断变量是否为整数   钱=120   print(“{0}是{1}“.format(钱,方法(钱)))   #判断变量是否为字符串   金钱=?20”;   print(“{0}是{1}“.format(钱,方法(钱)))   金钱=12.3   print(“{0}是{1}“.format(钱,方法(钱)))   #判断变量是否为列的表   学生=[& # 39;studentA& # 39;】   print(“{0}是{1}“.format(学生、方法(学生)))   #判断变量是否为元组   学生=(& # 39;studentA& # 39; & # 39; studentB& # 39;)   print(“{0}是{1}“.format(学生、方法(学生)))   #判断变量是否为字典   dictory={“key1":“value1",“key2":“value2"}   print(“{0}是{1}“.format (dictory方法(dictory)))   #判断变量是否为集合   苹果={“apple1",“apple2"}   print(“{0}是{1}“.format(苹果、方法(苹果)))

返回:

 python怎么判断变量的类型

2,通过与已知类型的常量进行比较

例子:

#判断变量类型的函数   def typeof(变量):   类型1=?“   如果类型(变量)==类型(1):   类型1=癷nt"   elif类型(变量)==类型(“str"):   类型1=皊tr"   elif类型(变量)==类型(12.3):   类型1=癴loat"   elif类型(变量)==类型([1]):   类型1=發ist"   elif类型(变量)==(()):   类型1=皌uple"   elif类型(变量)==类型({“key1":“123“}):   类型1=癲ict"   elif类型(变量)==类型({“key1"}):   类型1=皊et"   返回类型1   #返回变量类型   def方法(变量):   arr={“int":“整数“,“float":“浮点“,“str":“字符串“,“list":“列表“,“tuple":“元组“,“dict":“字典“,“set":“集合“}   vartype=typeof(变量)   如果不是(vartype arr):   返回“未知类型”;   返回arr [vartype]      #判断变量是否为整数   钱=120   print(“{0}是{1}“.format(钱,方法(钱)))   #判断变量是否为字符串   金钱=?20”;   print(“{0}是{1}“.format(钱,方法(钱)))   金钱=12.3   print(“{0}是{1}“.format(钱,方法(钱)))   #判断变量是否为列的表   学生=[& # 39;studentA& # 39;】   print(“{0}是{1}“.format(学生、方法(学生)))   #判断变量是否为元组   学生=(& # 39;studentA& # 39; & # 39; studentB& # 39;)   print(“{0}是{1}“.format(学生、方法(学生)))   #判断变量是否为字典   dictory={“key1":“value1",“key2":“value2"}   print(“{0}是{1}“.format (dictory方法(dictory)))   #判断变量是否为集合   苹果={“apple1",“apple2"}   print(“{0}是{1}“.format(苹果、方法(苹果)))

返回:

 python怎么判断变量的类型

补充:

isinstance()与()区型别:

类型()不会认为子类是一种父类类型,不考虑继承关系。

isinstance()会认为子类是一种父类类型,考虑继承关系。

python怎么判断变量的类型