前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python练习题-day15

python练习题-day15

作者头像
郭耀华
发布2019-10-23 15:01:19
4820
发布2019-10-23 15:01:19
举报
文章被收录于专栏:郭耀华‘s Blog郭耀华‘s Blog

1.请利用filter()过滤出1~100中平方根是整数的数,即结果应该是:

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

2.列表按照其中每一个值的绝对值排序

li = [1,-2,3,-48,78,9]

3.列表按照每一个元素的len排序

li = [(1,-2),[3],[-48,78,9],'hello world']

4.请把以下函数变成匿名函数

代码语言:javascript
复制
def add(x,y):
    return x+y

5.下面程序的输出结果是: d = lambda p:p*2 t = lambda p:p*3 x = 2 x = d(x) x = t(x) x = d(x) print (x)

6.现有两元组(('a'),('b')),(('c'),('d')),请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}]

# 看到匿名函数,就要想到肯定会带着考内置函数,而和匿名函数相关的内置函数只有5个:min max filter map sorted # 排除法想到map # 没用匿名函数

7.以下代码的输出是什么?请给出答案并解释。

代码语言:javascript
复制
def multipliers():
    return [lambda x:i*x for i in range(4)]
print([m(2) for m in multipliers()])

ANS:

代码语言:javascript
复制
#1
import math
li=[]
def f(x):
    return math.sqrt(x)==int(math.sqrt(x))
s=list(filter(f,range(101)))
代码语言:javascript
复制
#2
li = [1,-2,3,-48,78,9]
l=sorted(li,key=abs)
代码语言:javascript
复制
#3
li = [(1,-2),[3],[-48,78,9],'hello world']
l=sorted(li,key=len)
print(l)
代码语言:javascript
复制
#4
f=lambda x,y:x+y
代码语言:javascript
复制
#5
24
代码语言:javascript
复制
#6
#方法一
l=lambda x,y:[{x[0]:y[0]},{x[1]:y[1]}]
#方法二
tu1 =(('a'),('b'))
tu2 =(('c'),('d'))
res = zip(tu1,tu2)
# def func(tup):
#     return {tup[0]:tup[1]}
ret = map(lambda tup:{tup[0]:tup[1]},res)
# for i in ret:
#     print(i)
print(list(ret))
#简化版
print(list(map(lambda tup:{tup[0]:tup[1]},zip((('a'),('b')),(('c'),('d'))))))
代码语言:javascript
复制
#7
[6,6,6,6]
def multipliers():
    return (lambda x:i*x for i in range(4))         # 改为生成器
print([m(2) for m in multipliers()])
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-02-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档