Python高阶函数

#coding: gbk
'''
Created on 2017年8月13日

@author: Administrator
'''
from builtins import str
from _functools import reduce
from _ast import Str
from _sre import getlower
from _overlapped import NULL
from _operator import itemgetter
mystr = "ABCDEFG"
"""
for s in mystr:
    print(s)
"""

f = abs
print(f(-5))

def add(x,y,f):
    return f(x)+f(y)

print(add(5, -6, f))


def fun1(x):
    return x*x

l=list(range(10))
r1 =map(fun1 , l)
print('l:'+str(l)) # l:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print('r1:'+str(list(r1)))# r:[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

r2=map(str,l)
print('r2:'+str(list(r2))) #r2:['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']

def myadd(x,y):
    return x+y
r3 = reduce(myadd , l)
print('r3:'+str(r3)) #r3:45


def char2num(s):
    return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}[s]
r4 = map(char2num , '12345')
print(str(list(r4))) #[1, 2, 3, 4, 5]

def first(s):
    return s.capitalize()  #首字母大写,其他小写
print(first('sRTSfg')) #Srtsfg


def isodd(n):
    return n%2==0

print(list(filter(isodd , l)))  #[0, 2, 4, 6, 8]

print(sorted([36, 5, -12, 9, -21]))#[-21, -12, 5, 9, 36]
print(sorted([36, 5, -12, 9, -21],key = abs))#[5, 9, -12, -21, 36]

print(sorted(['bob', 'about', 'Zoo', 'Credit'])) #['Credit', 'Zoo', 'about', 'bob']
print(sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower))#['about', 'bob', 'Credit', 'Zoo']

students = [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)]

print(sorted(students, key=itemgetter(0))) #[('Adam', 92), ('Bart', 66), ('Bob', 75), ('Lisa', 88)]
print(sorted(students, key=itemgetter(1))) #[('Bart', 66), ('Bob', 75), ('Lisa', 88), ('Adam', 92)]



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值