Пример #1
0
    SkillData(105, "冷酷追击", 15, 30, 9),
]

# 不变的
# def find_demo04(target,func_condition):
#     for item in target:
#         if func_condition(item):
#             yield item


# 变化的
def condition01(item):
    return item.cd == 0


def condition02(item):
    return item.atk > 5


def condition03(item):
    return item.atk > 10 and item.costSP == 0


# for item in find_demo04(list_skills,condition01):
#     print(item)

# 通过模块调用
from common.custom_list_tools import ListHelper
for item in ListHelper.find_all(list_skills, condition01):
    print(item)
Пример #2
0
# -------------------------
a01 = lambda: print("我是lambda方法")
a01()

a02 = lambda a: print("我是lambda方法,参数是,", a)
a02(500)

a03 = lambda: True
print(a03())
#------------------------------------

from common.custom_list_tools import ListHelper
list01 = [1, 2, 33, 4, 45, 6]

for item in ListHelper.find_all(list01, lambda item: item > 5):
    print(item)

for item in ListHelper.find_all(list01, lambda item: item % 2 != 0):
    print(item)

# 提取不同点:
# def condition01(item):
#     return item> 5
#
# def condition02(item):
#     return item % 2 != 0
#
# def condition03(item):
#     return item < 3
Пример #3
0
        if item.atk > 10 and item.costSP == 0:
            yield item


# 提取共同点


def find_all(target, condition):
    for item in target:
        if condition(item):
            yield item


# 提取变化点


def condition01(item):
    return item.cd == 0


def condition02(item):
    return item.atk > 5


def condition03(item):
    return item.atk > 10 and item.costSP == 0


from common.custom_list_tools import ListHelper
ListHelper.find_all(list01, condition02())
Пример #4
0
def fun03():
    return True


a03 = lambda: True
print(a03())

# 应用
from common.custom_list_tools import ListHelper
list01 = [1, 2, 33, 4, 45, 6]


# 提取不同点
def condition01(item):
    return item > 5


def condition02(item):
    return item % 2 != 0


def condition03(item):
    return item < 3


for item in ListHelper.find_all(list01, condition01):
    print(item)

for item in ListHelper.find_all(list01, lambda item: item < 3):
    print(item)
Пример #5
0
]

# 变化的
# def condition01(item):
#     return item.cd == 0
#
# def condition02(item):
#     return item.atk > 5
#
# def condition03(item):
#     return item.atk > 10 and item.costSP == 0

# 通过模块调用
from common.custom_list_tools import ListHelper

for item in ListHelper.find_all(list_skills, lambda item: item.cd == 0):
    print(item)

for item in ListHelper.find_all(list_skills, lambda item: item.atk > 5):
    print(item)

# 练习:16:30
# 解决的问题:
#  查找编号是101的(单个)技能对象
#  查找名称是"降龙十八掌"的(单个)技能对象
#  查找cd大于10的(单个)技能对象

# 解决的步骤:
# 1. 逐个解决问题
# 2. 将共性提取到ListHelper中
# 3. 将变化用lambda表示.
Пример #6
0
# 练习:参照下列代码,实现对技能列表的查找

from common.custom_list_tools import ListHelper
list01 = [45, 12, 6, 22, 56]
# for val in ListHelper.find_all(list01, lambda item: item > 20):
#     print(val)

#
# for val in ListHelper.find_all(list01, lambda item: item >30 and item%2 == 0):
#     print(val)

for val in ListHelper.find_all(list01,
                               lambda item: item > 30 and item % 2 != 0):
    print(val)