初窥Python(四)——三种方法判断python变量类型

python 是动态语言,定义变量时不用指定变量类型,在代码执行过程中,会根据变量的值确定变量类型。python 中常用的变量类型有 int  float  long  bool  str  list  tuple set dict 等,常用的变量类型的有 types 库及内置的 type(object) 和 isinstance(object,class-or-type-or-tuple) 方法,下面分别来看一下如何通过这些方法进行变量类型的判断。

1.使用types库结合type(object)

python 中有一个内置的库 types,该库中有一系列 type 类型的常量,如 types.IntType 为 int 类型,types.StringType 为 str 类型,使用该库结合内置的 type(object) 函数进行比较可以判断变量类型:

import types
myInt = 1
myFloat = 1.1
myLong = 11111111111
myBool = True
myStr = "teststring"
myList = [1, 2]
myTuple = (1, 2)
mySet = set([1, 2])
myDict = {"name":"Lucy", "sex": "female"}
# 检测类型
type(myInt) is types.IntType
type(myFloat) is types.FloatType
type(myLong) is types.LongType
type(myBool) is types.BooleanType
type(myStr) is types.String
type(myList) is types.ListType
type(myTuple) is types.TupleType
# types库中没有对应的set类型,set可通过之后的方法进行判断
type(myDict) is types.DictType

2.使用type(object)

为了方便起见,也可以不借助于 types 包,直接使用内置的 type(object) 方法与已知数据类型进行比较来判断变量数据类型:

type(myInt) is type(1)
type(myFloat) is type(.1)
type(myLong) is type(1111111111111)
type(myBool) is type(True)
type(myStr) is type("a")
type(myList) is type([1])
type(myTuple) is type((1,))
type(mySet) is type(set([1]))
type(myDict) is type({1:2})

3.使用isinstance(object, class-or-type-or-tuple)

内置的 isinstance(object, class-or-type-or-tuple) 也可以用来判断变量类型,返回一个布尔值:

isinstance(myInt, int)
isinstance(myFloat, float)
isinstance(myLong, float)
isinstance(myBool, bool)
isinstance(myStr, str)
isinstance(myList, list)
isinstance(myTuple, tuple)
isinstance(mySet, set)
isinstance(myDict, dict)
# 第二个参数使用tuple类型
isinstance(myDict, (list, tuple, set, dict))

完。

时间: 2024-11-01 21:10:08

初窥Python(四)——三种方法判断python变量类型的相关文章

Python类三种方法,函数传参,类与实例变量(一)

1 Python的函数传递: 首先所有的变量都可以理解为内存中一个对象的'引用' a = 1 def func(a): a = 2 func(a) print(a) # 1 a = 1 def fun(a): print("函数里",id(a)) # 函数里 41322472 a = 2 print("赋值后",id(a), id(2)) # 赋值后 41322448 41322448 print("函数外",id(a), id(1)) # 函数

C# winform三种方法判断文本框textBox内容是否为空

使用系统API函数,需要使用命名空间:System.Runtime.InteropServices: 1.if (textBoxPath.Text ==  String.Empty ) 2.if (textBoxPath.Text == "" ) 3.if (String.IsNullOrEmpty(textBoxPath.Text)) 原文地址:https://www.cnblogs.com/kelly1314/p/12155928.html

python里三种等待元素的方法

在做web或app的自动化测试经过会出现找不到元素而报错的情况,很多时候是因为元素 还没有被加载出来,查找的代码就已经被执行了,自然就找不到元素了.那么我可以用等待 元素加载完成后再执行查找元素的code. Python里有三种等待的方式:一. 强制等待 Sleep(54) 这个方法在time模块,使用时通过from time import sleep导入比如: Sleep(10) #表示强行等待10s再执行下一句代码 Driver.find_element_by_xpath("xxxxxx&q

ubuntu/linux mint 创建proc文件的三种方法(四)

在做内核驱动开发的时候,可以使用/proc下的文件,获取相应的信息,以便调试. 大多数/proc下的文件是只读的,但为了示例的完整性,都提供了写方法. 方法一:使用create_proc_entry创建proc文件(简单,但写操作有缓冲区溢出的危险): 方法二:使用proc_create和seq_file创建proc文件(较方法三简洁): 方法三:使用proc_create_data和seq_file创建proc文件(较麻烦,但比较完整): 示例四:在proc文件中使用内核链表的一个示例(用的方

【机器学习算法-python实现】协同过滤(cf)的三种方法实现

(转载请注明出处:http://blog.csdn.net/buptgshengod) 1.背景 协同过滤(collaborative filtering)是推荐系统常用的一种方法.cf的主要思想就是找出物品相似度高的归为一类进行推荐.cf又分为icf和ucf.icf指的是item collaborative filtering,是将商品进行分析推荐.同理ucf的u指的是user,他是找出知趣相似的人,进行推荐.通常来讲icf的准确率可能会高一些,通过这次参加天猫大数据比赛,我觉得只有在数据量非

python下载文件的三种方法

Python开发中时长遇到要下载文件的情况,最常用的方法就是通过Http利用urllib或者urllib2模块. 当然你也可以利用ftplib从ftp站点下载文件.此外Python还提供了另外一种方法requests. 下面来看看三种方法是如何来下载zip文件的:方法一: import urllib import urllib2 import requests print "downloading with urllib" url = 'http://***/test/demo.zip

Python爬取网页的三种方法

# Python爬取网页的三种方法之一:  使用urllib或者urllib2模块的getparam方法 import urllib fopen1 = urllib.urlopen('http://www.baidu.com').info() fopen2 = urllib2.urlopen('http://www.sina.com').info() print fopen1.getparam('charset') print fopen2.getparam('charset') #----有些

sharepoint 判断用户是否存在某个组中三种方法

1.思路:查找用户所有的组来匹配是否在特定的组(推荐) 不用担心组不存在而报错. public static bool IsUserMemberOfGroup(SPUser user, string groupName) { bool result = false; if (!String.IsNullOrEmpty(groupName) && user != null) { foreach (SPGroup group in user.Groups) { if (group.Name =

python字符串连接的三种方法及其效率、适用场景详解

python字符串连接的方法,一般有以下三种:方法1:直接通过加号(+)操作符连接website=& 39;python& 39;+& 39;tab& 39;+& 39; com& 39;方法2 python字符串连接的方法,一般有以下三种: 方法1:直接通过加号(+)操作符连接 1 website = 'python' + 'tab' + '.com' 方法2:join方法 1 2 listStr = ['python', 'tab', '.com']