如何在python中判断变量的类型


Posted in Python onJuly 29, 2020

python的数据类型有:数字(int)、浮点(float)、字符串(str),列表(list)、元组(tuple)、字典(dict)、集合(set)

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

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

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

参数1:变量

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

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

例子:

#判断变量类型的函数
def typeof(variate):
  type=None
  if isinstance(variate,int):
    type = "int"
  elif isinstance(variate,str):
    type = "str"
  elif isinstance(variate,float):
    type = "float"
  elif isinstance(variate,list):
    type = "list"
  elif isinstance(variate,tuple):
    type = "tuple"
  elif isinstance(variate,dict):
    type = "dict"
  elif isinstance(variate,set):
    type = "set"
  return type
# 返回变量类型
def getType(variate):
  arr = {"int":"整数","float":"浮点","str":"字符串","list":"列表","tuple":"元组","dict":"字典","set":"集合"}
  vartype = typeof(variate)
  if not (vartype in arr):
    return "未知类型"
  return arr[vartype]

#判断变量是否为整数
money=120
print("{0}是{1}".format(money,getType(money)))
#判断变量是否为字符串
money="120"
print("{0}是{1}".format(money,getType(money)))
money=12.3
print("{0}是{1}".format(money,getType(money)))
#判断变量是否为列表
students=['studentA']
print("{0}是{1}".format(students,getType(students)))
#判断变量是否为元组
students=('studentA','studentB')
print("{0}是{1}".format(students,getType(students)))
#判断变量是否为字典
dictory={"key1":"value1","key2":"value2"}
print("{0}是{1}".format(dictory,getType(dictory)))
#判断变量是否为集合
apple={"apple1","apple2"}46 print("{0}是{1}".format(apple,getType(apple)))

返回:

如何在python中判断变量的类型

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

例子:

#判断变量类型的函数
def typeof(variate):
  type1 = ""
  if type(variate) == type(1):
    type1 = "int"
  elif type(variate) == type("str"):
    type1 = "str"
  elif type(variate) == type(12.3):
    type1 = "float"
  elif type(variate) == type([1]):
    type1 = "list"
  elif type(variate) == type(()):
    type1 = "tuple"
  elif type(variate) == type({"key1":"123"}):
    type1 = "dict"
  elif type(variate) == type({"key1"}):
    type1 = "set"
  return type1
# 返回变量类型
def getType(variate):
  arr = {"int":"整数","float":"浮点","str":"字符串","list":"列表","tuple":"元组","dict":"字典","set":"集合"}
  vartype = typeof(variate)
  if not (vartype in arr):
    return "未知类型"
  return arr[vartype]

#判断变量是否为整数
money=120
print("{0}是{1}".format(money,getType(money)))
#判断变量是否为字符串
money="120"
print("{0}是{1}".format(money,getType(money)))
money=12.3
print("{0}是{1}".format(money,getType(money)))
#判断变量是否为列表
students=['studentA']
print("{0}是{1}".format(students,getType(students)))
#判断变量是否为元组
students=('studentA','studentB')
print("{0}是{1}".format(students,getType(students)))
#判断变量是否为字典
dictory={"key1":"value1","key2":"value2"}
print("{0}是{1}".format(dictory,getType(dictory)))
#判断变量是否为集合
apple={"apple1","apple2"}
print("{0}是{1}".format(apple,getType(apple)))

返回:

如何在python中判断变量的类型

补充: 

isinstance() 与 type() 区别:

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

如果要判断两个类型是否相同推荐使用 isinstance()。

以上就是如何在python中判断变量的类型的详细内容,更多关于Python判断变量类型的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
MySQLdb ImportError: libmysqlclient.so.18解决方法
Aug 21 Python
Python的另外几种语言实现
Jan 29 Python
使用python实现生成用户信息
Mar 20 Python
python读取文件名称生成list的方法
Apr 27 Python
pandas DataFrame 交集并集补集的实现
Jun 24 Python
使用python进行广告点击率的预测的实现
Jul 04 Python
Python代码太长换行的实现
Jul 05 Python
对Django 转发和重定向的实例详解
Aug 06 Python
wxPython实现列表增删改查功能
Nov 19 Python
在pycharm中创建django项目的示例代码
May 28 Python
Python Selenium模块安装使用教程详解
Jul 09 Python
class类在python中获取金融数据的实例方法
Dec 10 Python
Python中的With语句的使用及原理
Jul 29 #Python
解决c++调用python中文乱码问题
Jul 29 #Python
Python 实现简单的客户端认证
Jul 29 #Python
Tensorflow使用Anaconda、pycharm安装记录
Jul 29 #Python
学python爬虫能做什么
Jul 29 #Python
Python 创建TCP服务器的方法
Jul 28 #Python
Python实现画图软件功能方法详解
Jul 28 #Python
You might like
中国广播史趣谈 — 几个历史第一次
2021/03/01 无线电
SONY SRF-40W电路分析
2021/03/02 无线电
ThinkPHP开发框架函数详解:C方法
2015/08/14 PHP
PHP基于ORM方式操作MySQL数据库实例
2017/06/21 PHP
PHP代码重构方法漫谈
2018/04/17 PHP
PHP实现普通hash分布式算法简单示例
2018/08/06 PHP
tp5框架内使用tp3.2分页的方法分析
2019/05/05 PHP
基于Laravel 5.2 regex验证的正确写法
2019/09/29 PHP
PHP7修改的函数
2021/03/09 PHP
JavaScript学习点滴 call、apply的区别
2010/10/22 Javascript
jQuery操作input值的各种方法总结
2013/11/21 Javascript
javascript模拟php函数in_array
2015/04/27 Javascript
jQuery中(function($){})(jQuery)详解
2015/07/15 Javascript
jqGrid中文文档之选项设置
2015/12/02 Javascript
Es6 写的文件import 起来解决方案详解
2016/12/13 Javascript
Angularjs使用指令做表单校验的方法
2017/03/31 Javascript
React学习笔记之列表渲染示例详解
2017/08/22 Javascript
微信小程序 button样式设置为图片的方法
2020/06/19 Javascript
javascript开发实现贪吃蛇游戏
2020/07/31 Javascript
Python中的ceil()方法使用教程
2015/05/14 Python
python 中的list和array的不同之处及转换问题
2018/03/13 Python
python实现逐个读取txt字符并修改
2018/12/24 Python
Python实现定时自动关闭的tkinter窗口方法
2019/02/16 Python
python numpy之np.random的随机数函数使用介绍
2019/10/06 Python
利用OpenCV中对图像数据进行64F和8U转换的方式
2020/06/03 Python
Python关于拓扑排序知识点讲解
2021/01/04 Python
Woods官网:加拿大最古老、最受尊敬的户外品牌之一
2020/09/12 全球购物
毕业自我鉴定
2013/11/05 职场文书
八一建军节部队活动方案
2014/02/04 职场文书
2015年元旦文艺汇演主持词
2014/03/26 职场文书
中国入世承诺
2014/04/01 职场文书
《花木兰》教学反思
2014/04/09 职场文书
违纪学生保证书
2015/02/27 职场文书
公司档案管理制度
2015/08/05 职场文书
职场中的你,辞职信写对了吗?
2019/06/26 职场文书
写作指导:怎么书写竞聘演讲稿?
2019/07/04 职场文书