python高阶函数:自定义判 断列表中元素是否存在

from commce import funcomm

class Enemy:

def __init__(self,name,hp,atk,defense):

self.name=name

self.hp=hp

self.atk=atk

self.defense=defense

def __str__(self):

return "姓名:%s,--%d---%d--%d"%(self.name,self.hp,self.atk,self.defense)

list01=[Enemy("老妖",89,78,87),

Enemy("山精",200,176,287),

Enemy("青妖",102,96,97),]

#以下代码作为包中的模块存放在commce包的funcomm.py模块Commec类中

def is_exixts(list_men,func):

for itme in list_men:

if func(itme):

return True

return False

#上面的返回值用的是return所以下面直接打印。

from commce import funcomm#调用方法

#查找是否有“老妖这个元素”

re=commce.funcomm.Commec.is_exixts(list01,lambda men:men.name=="老妖")

print(re)

#按条件查找攻击力

print(commce.funcomm.Commec.is_exixts(list01,lambda men:men.atk>100 or men.atk<80))

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章