码迷,mamicode.com
首页 > 编程语言 > 详细

python内置函数、匿名函数、递归

时间:2017-11-11 17:50:22      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:cti   开头   list   images   就是   过滤   结束   导致   with   

一、内置函数

技术分享

  内置函数详解:http://www.runoob.com/python/python-built-in-functions.html

二、匿名函数

  匿名函数就是不需要显示的指定函数

#这段代码
def calc(n):
    return n**n
print(calc(10))
 
#换成匿名函数
calc = lambda n:n**n
print(calc(10))

  

l=[3,2,100,999,213,1111,31121,333]
print(max(l))

dic={‘k1‘:10,‘k2‘:100,‘k3‘:30}


print(max(dic))
print(dic[max(dic,key=lambda k:dic[k])])

  

# 1 文件内容如下,标题为:姓名,性别,年纪,薪资
# 
# egon male 18 3000
# alex male 38 30000
# wupeiqi female 28 20000
# yuanhao female 28 10000

with open(‘b.txt‘,encoding=‘utf-8‘) as f:
    l1=[{‘name‘:line.split()[0],‘sex‘:line.split()[1],        ‘age‘:line.split()[2],‘salary‘:line.split()[3]}for line in f]

    # 4 根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式
    l4=[i[‘name‘] for i in l1]
    print(list(map(lambda item:item.capitalize(),l4)))

    # 5 根据1得到的列表,过滤掉名字以a开头的人的信息
    l4=[i[‘name‘] for i in l1]
    print(list(filter(lambda name:not name.startswith(‘a‘),l4)))

  

三、递归调用

  递归特性:

  1. 必须有一个明确的结束条件

  2. 每次进入更深一层递归时,问题规模相比上次递归都应有所减少

  3. 递归效率不高,递归层次过多会导致栈溢出(在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出)

  递归有两个阶段

  阶段一:递推

  阶段二:回溯

python内置函数、匿名函数、递归

标签:cti   开头   list   images   就是   过滤   结束   导致   with   

原文地址:http://www.cnblogs.com/gpd-Amos/p/7819373.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!