1、匿名函数

匿名函数也是一个函数,是一个简单的函数,没有名字,只能实现一些简单的功能
1 #匿名函数也是一个函数,是一个简单的函数,没有名字,只能实现一些简单的功能
2 lambda x:x+1#入参,返回值
3
4 def f2(x):#这个方法与上边的匿名方法实现的内容一样
5 return x+1
6
7 print(f2(1))

2、内置函数

2.1 常用的内置函数

1 print(max([123,423,1,2,3,45,332]))#取最大值
2 print(sum([123,423,1,2,3,45,332]))#求和
3 print(divmod(10,3))#余数
4 print(round(11.222222,2))#取几位小数
5 l = ['u1','u2','u3']
6 l2 = ['p1','p2','p3']
7 print(list(zip(l,l2)))#将两个list和为一个二维数组
8 print(dict(zip(l,l2)))#将两个list和为一个字典
 1 l = [1,2,34,12,32,98,3221,98,34,532]
2 print(sorted(l))#排序
3 print(sorted(l,reverse=True))#降序排序
4 print(l)
5
6 l2 = [
7 ['xiaobai',12],
8 ['xiaohei',11],
9 ['lisi',98],
10 ['wangwu',34]
11 ]
12 #lambda x:x[-1],传入的参数是每次循环的值
13 l3 = sorted(l2,key=lambda x:x[-1])#二维数组排序,key是传一个函数名,是指用哪个参数来进行排序 14 print(l3) 15 def user_key(x): 16 return x[-1] 17 #key是传一个函数名,由sorted循环排序时去调用该函数 18 l4 = sorted(l2,reverse=True,key=user_key) 19 print(l4)
 1 l = [1,2,34,12,32,98,3221,98,34,532]
2 #循环把list的每个参数传给函数,
3 #根据某个规则来过滤list里的参数
4 result = filter(lambda x:x>5,l)
5 stri = 'fdsfrewrwerwrffdsf'
6 str_result = filter(lambda x:x!='f',stri)
7 print(list(str_result))
8 print(list(result))
9 #保留函数返回的值,就是循环执行函数
10 map_result = map(lambda x:x>5,l)
11 print(list(map_result))
12 map_result1 = map(lambda x:str(x).strip().zfill(3),l)
13 print(list(map_result1))
14
15 for index,i in enumerate(l,1):#将list转为带下标的二维数组,传1是从1开始,默认从0开始
16 print('%s -> %s'%(index,i))
 1 str_code = '''
2 l = [1,2,34,12,32,98,3221,98,34,532]
3 map_result1 = map(lambda x:str(x).strip().zfill(3),l)
4 print(list(map_result1))
5 print('hhhh')
6 '''
7 #让程序自动帮你执行代码,可以执行所有的python代码
8 #用exec方法有风险,比如执行os.remove()把文件删除等
9 exec(str_code)
10
11 result = eval('{"name":"xiaohei","age":"19"}')#执行python代码,只能执行简单的,定义数据类型和运算
12 print(result)

2.2 不常用的内置函数

 1 print(all([1,2,3,4,5,0]))#判断可迭代对象里的值是否都为真
2 print(any([1,2,3,4,5,0]))#判断可迭代对象里的值是否有一个为真
3 print(bin(10))#10进制转2进制
4 print(hex(10))#10进制转成16进制
5 print(oct(10))#10进制转成8进制
6 print(chr(33))#数字对应的ascii码
7 print(ord('v'))#字符对应的ascii码
8 #python3 默认的字符集是utf-8
9 #python2 默认的字符集是ASCII
10 f = open('a.txt','w')
11 print(dir(f))#打印传入对象的可调用方法
12 print(locals())#返回局部变量
13 def fun():
14 name = 'abc'
15 age = 18
16 print(locals()) # 返回局部变量,返回的是一个字典
17 fun()
18
19 print(globals())#返回全局变量,返回的是一个字典

3、递归

函数自己调用自己,就是递归

递归最大的次数是999次,如果执行次数超过最大次数就会报错

 1 #函数自己调用自己,就是递归
2 #递归最大的次数是999次
3
4 count = 1
5 def xiake():
6 global count
7 print(count)
8 count += 1
9 print('下课')
10 xiake()
11 #xiake()
12
13 #1、递归时:全局变量会一直占着内存,所以递归时能不用全局变量就不用全局变量
14 #2、递归没有循环的效率高

4、变量

4.1 局部变量

在函数里定义的变量都是局部变量(没有加globals修饰)

作用域在函数里,出了函数就失败了

1 name = 'caimingchang'
2 def fun():
3 name = 'cai'
4 print('name1',name)
5
6 fun()
7 print('name2',name)

4.2 全局变量

一般写在代码最上面,作用域是全局的,大家都可以用

如果定义在函数里,要加globals修饰,而且要执行函数时,才会定义

 1 fun()
2 print('name2',name)
3
4
5 def test():
6 global a
7 a = 5
8
9 def test1():
10 c = a + 5
11 return c
12
13 res = test1()
14 print(res)

这段代码执行会报错,因为全局变量a没有被定义

4.3 常量

常量也是一种变量,是一种不会变得变量,一般用全部大写来定义

1 IP = '192.168.1.13' 2 print(IP)

python使用笔记007-内置函数,匿名函数的更多相关文章

  1. python学习日记(内置、匿名函数练习题)

    用map来处理字符串列表 用map来处理字符串列表,把列表中所有水果都变成juice,比方apple_juice fruits=['apple','orange','mango','watermelo ...

  2. Python学习笔记-Day3-python内置函数

    python内置函数 1.abs    求绝对值 2.all 判断迭代器中的所有数据是否都为true 如果可迭代的数据的所有数据都为true或可迭代的数据为空,返回True.否则返回False 3.a ...

  3. [Python学习笔记-001] 内置函数getattr()

    如果某个实例foo有多个方法, 当对foo的每一个方法我们都需要使用try ... except ...进行包装的时候,内置函数getattr()可以用来精简代码. 1. getattr()的用法 # ...

  4. Python学习笔记011——内置函数exec()

    1 描述 把一个字符串当成语句执行 exec()  执行储存在字符串或文件中的 Python 语句,相比于  eval() , exec() 可以执行更复杂的 Python 代码. exec函数和ev ...

  5. Python学习笔记-常用内置函数

    输出:print() 功能:输出打印 语法:print(*objects, sep=' ', end='\n', file=sys.stdout) 参数:objects----复数,表示可以一次输出多 ...

  6. python学习笔记011——内置函数pow()

    1 语法 pow(x, y[, z]) x -- 数值表达式. y -- 数值表达式. z -- 数值表达式. 函数是计算 x 的 y 次方,如果 z 在存在,则再对结果进行取模,其结果等效于pow( ...

  7. python学习笔记013——内置函数dir()

    1 描述 dir() 函数 不带参数时,返回当前范围内的变量.方法和定义的类型列表: 带参数时,返回参数的属性.方法列表. 如果参数包含方法__dir__(),该方法将被调用. 如果参数不包含__di ...

  8. python学习笔记011——内置函数dir()

    1 描述 dir()函数可以查看(打印)对象的属性和方法.不管时那种对象(python中一切皆对象)类型(数据,模块)都有自己的属性和方法. dir() 函数不带参数时,返回当前范围内的变量.方法和定 ...

  9. 05 python学习笔记-常用内置函数(五)

    1.sorted() 函数对所有可迭代的对象进行排序(默认升序)操作 sort 与 sorted 区别: sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作. l ...

  10. Python学习笔记2—内置函数

    函数的使用 官方文档:https://docs.python.org/2/library/functions.html

随机推荐

  1. C# 尝试还原程序包是出错:找不到“XXXXX”版本的程序包“XXXXXX”

    在C#管理程序包的时候有时会出现找不到某某版本的程序包 如果出现这样的情况,解决办法是在你当前项目获取当前类库下的packages.config里去删除一段配置就可以解决! 我的缺少的是版本为9.0. ...

  2. 激光雷达Lidar与毫米波雷达Radar:自动驾驶的利弊

    激光雷达Lidar与毫米波雷达Radar:自动驾驶的利弊 Lidar vs Radar: pros and cons for autonomous driving 新型无人驾驶汽车的数量在缓慢增加,各 ...

  3. IaaS、PaaS 和 SaaS:云服务模型概述

    IaaS.PaaS 和 SaaS:云服务模型概述 为您的组织选择合适的云服务模型,可以帮助您充分利用预算和 IT 资源. 基础设施即服务 (IaaS).平台即服务 (PaaS) 以及软件即服务 (Sa ...

  4. Docker 版 3分钟部署 .net core 开源在线客服系统,他来了

    我在博客园发表了一系列文章,开始介绍基于 .net core 的在线客服系统开发过程. 前些天又应朋友的要求,发了一篇 CentOS 版本的安装部署教程:https://www.cnblogs.com ...

  5. 【题解】[LuoguP3503]「BZOJ2086」[POI2010] Blocks

    题目描述 给出N个正整数a[1..N],再给出一个正整数k,现在可以进行如下操作:每次选择一个大于k的正整数a[i],将a[i]减去1,选择a[i-1]或a[i+1]中的一个加上1.经过一定次数的操作 ...

  6. 【图论】用线段树写Dijikstra!!

    速度是没有极限的. 众说周知,Dijikstra是一种最短路算法,复杂度为O(V^2+E) 朴素Dijikstra void Dijikstra(int s){ memset(dis,inf,size ...

  7. Mysql优化(出自官方文档) - 第二篇

    Mysql优化(出自官方文档) - 第二篇 目录 Mysql优化(出自官方文档) - 第二篇 1 关于Nested Loop Join的相关知识 1.1 相关概念和算法 1.2 一些优化 1 关于Ne ...

  8. Pytest学习笔记5-conftest.py的用法

    前言 在之前介绍fixture的文章中,我们使用到了conftest.py文件,那么conftest.py文件到底该如何使用呢,下面我们就来详细了解一下conftest.py文件的特点和使用方法吧 什 ...

  9. hackthebox TheNotebook

    前言 只拿到了user,提权没成功--有wp说是CVE-2019-5736,我没打成. 打点 nmap-sV -v -A 10.10.10.230 端口扫描结果: PORT STATE SERVICE ...

  10. zookeeper使用教程

    Zookeeper 1.       Zookeeper概述 1.1 概述 Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目. 1.2 特点 1)Zookeeper: ...