isinstance(object,type)#只要object是type类型,返回True;否则返回False
作用:来判断一个对象是否是一个已知的类型。
其第一个参数(object)为对象,第二个参数(type)为类型名(int…)或类型名的一个列表((int,list,float)是一个列表)。其返回值为布尔型(True or flase)。
若对象的类型与参数二的类型相同则返回True。若参数二为一个元组,则若对象类型与元组中类型名之一相同即返回True。
>>> a = 4
>>> isinstance (a,int)
True
>>> isinstance (a,str)
False
>>> isinstance (a,(str,int,list))
True
>>> a = "b"
>>> isinstance(a,str)
True
>>> isinstance(a,int)
False
>>> isinstance(a,(int,list,float))
False
>>> isinstance(a,(int,list,float,str))
True
比如,我要访问一个列表中含有字典类型的数据,就需要判断是不是字典类型
a=[1,2,3,{4:'a'},5,{'b':6},7]
for x in a:
if isinstance(x,dict):
for k,v in x.items():
print v
这里补充一下,该怎么
循环访问字典中的元素
dic = {'a':3,'c':1,'b':2}
print(dic.items())
print(dic.keys())
print(dic.values())
for x,y in dic.items():
dic[x] = y+10
print(dic)
for x in dic.keys():
x += '1'
print(dic)
for y in dic.values():
y += 1
print(dic)
字典元素排序(按key、value排序)
先来基本介绍一下sorted函数,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse这三个参数。
其中iterable表示可以迭代的对象,例如可以是dict.items()、dict.keys()等,
key是一个函数,用来选取参与比较的元素,一般使用lambda表达式
reverse=true则是倒序,reverse=false时则是顺序,默认时reverse=false。
lambda表达式
功能: 创建匿名函数
区别: 和def函数定义,以下两点区别
lambda会创建一个函数对象,但不会把这个函数对象赋给一个标识符;而def则会把函数对象赋值给一个变量
lambda它只是一个表达式,而def则是一个语句
具体排序用法:
a = sorted(dic.items(),key = lambda asd:asd[1],reverse=True)
经过排序之后,字典变成了列表类型;列表中每个元素是一个tuple
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)