内置函数map、zip和lambda结合推导式适用

“”"
1、现在有一个列表 li = [11,21,4,55,6,67,123,54,66,9,90,56,34,22],
请将 大于5的数据过滤出来,然后除以2取余数,结果放到一个生成器中
“”"
li = [11, 21, 4, 55, 6, 67, 123, 54, 66, 9, 90, 56, 34, 22]

li_filter = list(filter(lambda x: x > 5, li))

li_map = map(lambda x: x % 2, li_filter)

print(li_map)

print(list(li_map))

res = (b % 2 for b in li if b > 5)

li_map = map(lambda x: x % 2, list(filter(lambda x: x > 5, li)))
print(list(li_map))

“”"
2、定义一个可以使用send传入域名,自动生成一个在前面加上http://,在后面加上路径/user/login的url地址,

生成器最多可以生成5个url,生成5条数据之后再去生成,则报错StopIteration

使用案例:

例如:

res = g.send(‘www.baidu.com’)

生成数据res为:http://www.baidu.com/user/logim’

“”"

def url_func():
n = yield
count = 5
while count:
yield f"http://{n}/usr/login"
count -= 1

“”"
3、对下面的列表进行排序(规则:根据元素的name字段的值的大小进行排序)
li2 = [{‘id’: 1, “name”: 100}, {‘id’: 7, “name”: 9}, {‘id’: 3, “name”: 1}]
“”"
li2 = [{‘id’: 1, “name”: 100}, {‘id’: 7, “name”: 9}, {‘id’: 3, “name”: 1}]
li2.sort(key=lambda x: x[‘name’])
“”"
4、数据类型转换操作有一组用例数据如下:
cases = [
[‘case_id’, ‘case_title’, ‘url’, ‘data’, ‘excepted’],
[1, ‘用例1’, ‘www.baudi.com’, ‘001’, ‘ok’],
[4, ‘用例4’, ‘www.baudi.com’, ‘002’, ‘ok’],
[2, ‘用例2’, ‘www.baudi.com’, ‘002’, ‘ok’],
[3, ‘用例3’, ‘www.baudi.com’, ‘002’, ‘ok’],
[5, ‘用例5’, ‘www.baudi.com’, ‘002’, ‘ok’],
]
要求:通过相关操作转换为以下格式
res1 = [
{‘case_id’: 1, ‘case_title’: ‘用例1’, ‘url’: ‘www.baudi.com’, ‘data’: ‘001’, ‘excepted’: ‘ok’},
{‘case_id’: 4, ‘case_title’: ‘用例4’, ‘url’: ‘www.baudi.com’, ‘data’: ‘002’, ‘excepted’: ‘ok’},
{‘case_id’: 2, ‘case_title’: ‘用例2’, ‘url’: ‘www.baudi.com’, ‘data’: ‘002’, ‘excepted’: ‘ok’},
{‘case_id’: 3, ‘case_title’: ‘用例3’, ‘url’: ‘www.baudi.com’, ‘data’: ‘002’, ‘excepted’: ‘ok’},
{‘case_id’: 5, ‘case_title’: ‘用例5’, ‘url’: ‘www.baudi.com’, ‘data’: ‘002’, ‘excepted’: ‘ok’}
]
“”"
cases = [
[‘case_id’, ‘case_title’, ‘url’, ‘data’, ‘excepted’],
[1, ‘用例1’, ‘www.baudi.com’, ‘001’, ‘ok’],
[4, ‘用例4’, ‘www.baudi.com’, ‘002’, ‘ok’],
[2, ‘用例2’, ‘www.baudi.com’, ‘002’, ‘ok’],
[3, ‘用例3’, ‘www.baudi.com’, ‘002’, ‘ok’],
[5, ‘用例5’, ‘www.baudi.com’, ‘002’, ‘ok’],
]
res1 = [dict(zip(cases[0], case)) for case in cases if case != cases[0]]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值