练---lambda

# goods = [
#   {"name": "电脑", "price": 1999},
#   {"name": "鼠标", "price": 10},
#   {"name": "游艇", "price": 20},
#  {"name": "美女", "price": 998},
#   ]
# print('first'.center(40,'='))
# for i,m in enumerate(goods):
#     index = i
#     mygoods = m['name']
#     myprice = m['price']
#     print('序号为:{},\t 商品名称:{},\t 商品价格:{}'.format(index,mygoods,myprice))
#
# print('second'.center(40,'='))
#
# for i in range(len(goods)):
#     index = i
#     mygoods = goods[i]['name']
#     myprice = goods[i]['price']
#     print('序号为:{},\t 商品名称:{},\t 商品价格:{}'.format(index, mygoods, myprice))
#
# print('third'.center(40,'='))
# for good in goods:
#     index = goods.index(good)
#     mygoods = good['name']
#     myprice = good['price']
#     print('序号为:{},\t 商品名称:{},\t 商品价格:{}'.format(index, mygoods, myprice))


'''匿名函数lambda arg1 ,arg2:expression
map filter(函数,迭代对象)  reduce(函数,迭代对象,基数)
map();          遍历输出
filter();       遍历输出,筛选过滤
reduce()累计的,直接返回结果,可以指定基数,需要导包from functools import reduce
sorted(iterable,key,reverse)和.sort()的区别:
sorted()排序时不影响原数据,产生新的排序数据,有返回值
.sort()对原有列表进行排序,改变原来列表的顺序,无返回值
排序字符串按ascii的大小
'''
from functools import reduce

print('map'.center(40,'-'))
m = map(lambda x:x*2+1,range(1,11))
for i in m:
    print(i)


print('filter'.center(40,'-'))
# 输出1到100里平方根是整数的数
import math
result = filter(lambda a:math.sqrt(a) % 1 == 0,range(1,101))
for i in result:
    print(i)


print('reduce'.center(40,'-'))
result = reduce(lambda x,y:x+y,range(1,11),50)
print(result)


print('拓展'.rjust(4,'-'),'输出1到100里平方根是整数的数'.center(20,'-'))
for i in range(1,11):
    if i * i <= 100:
        print(i*i)
# print('--------------------')
# 下面没写好呢
# for i in range(1,i+1):
#     for j in range(1,11):
#         if i == j * j:
#             print(i)


# .strip()
# str1 = 'sjis dij s'
# str = str1.strip('s')
# print(str)
# print(str1)


print('---------.sort()和sorted()----------')
li = ['ap','s','D','An']
lis = [1,3,6,8,9,0,2]
li.sort(key=str.lower,reverse=True)
newli = sorted(li,key=str.lower)
print('.sort()------',li,'key=str.lower忽略大小写,reverse=True从大到小排列')
print('sorted()-----',newli,'key=str.lower忽略大小写,reverse默认从小到大排列')

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值