拆包:*A拆元组,**B拆字典。

引用:在C、C++里面里面a=1,b=a,实际上相当于硬链接,相当于两份a、b各有一个1,多占一个空间,而在python里就是软连接,只有一份,通过id(a)来查看id都一样,

在python里定义的东西如一直没引用,那么就会成为垃圾,不用担心,python有自己的机制去除垃圾。

不可变类型:数字、字符串、元组。

可变类型:列表、字典,它们都不能做字典的key。

递归:一个函数里调用了这个函数自己,递归完成阶乘,3的阶乘=3*(2的阶乘)

递归时一定要想到何时要结束递归,不然最终程序一定会崩掉,因为它会占内存一直下去会将内存全部占完。

正反排序和倒序

字典要想比大小需要通过匿名函数,匿名函数冒号后面的值就相当于key的返回值,可按照数字或asic码来做比较,如下:

匿名函数用来实现某功能,简易化操作,不需要专门命名定义,也不用多条函数,当然传参又需要结果时,非常好用。

当需要调用匿名函数表达式时可以用eval来转换,相当于用int可以转换字符串为数字

eval相当于把字符串lambda转为表达式

数值交换,第一种方法通过第三个空变量,相当于两满杯水要实现交换需要来一个空瓶:

第二种方法:

第三种方法:python独有

函数内部变量之所以不能修改全局变量,是因为全局变量为不可变,此时只能通过global参数来修改全局变量,但如果全局变量是列表或字典等可变的,那么函数内部变量即可以不加global关键字随时进行修改。

在python里,num+=num不一定等于num=num+num,前面的意思代表可以直接对num赋值,在对函数内修改全局变量有效,而后面那个是对num赋一个新值,不能修改全局变量值,这点要注意。

本文转自  流颗星  51CTO博客,原文链接:http://blog.51cto.com/liukexing/1970074

python里的拆包、引用、递归与匿名函数相关推荐

  1. python 三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数

    一.三元表达式 语法:[成立1 if condition1 else成立2 if condition2 else ...if 成立N conditionN else 不成立] sex = 'man' ...

  2. python开发基础04-函数、递归、匿名函数、高阶函数、装饰器

    匿名函数 lamba lambda x,y,z=1:x+y+z 匿名就是没有名字 def func(x,y,z=1):return x+y+z匿名 lambda x,y,z=1:x+y+z #与函数有 ...

  3. Python day10 global关键字、函数递归、匿名函数、map函数的用法详解

    1.global关键字 引用全局变量,在局部全局变量改变,也会改变,global相当于指针,将地址指向全局变量的name name='littlepage'def littepage():global ...

  4. python 函数递归_Python零基础之三元表达式、函数递归、匿名函数教程!超级详细!...

    目录 一.三元表达式 二.函数递归 递归调用的定义 递归分为两个阶段:递归,回溯 三.匿名函数 什么是匿名函数? 有名字的函数与匿名函数的对比 lambda匿名函数的应用 四.内置函数 #注意:内置函 ...

  5. python递归,匿名函数

    递归函数 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数. 递归函数特性: 必须有一个明确的结束条件:     每次进入更深一层递归时,问题规模相比上次递归都应有所 ...

  6. Python--三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数...

    三元表达式 列表推导式 生成器表达式 递归与二分法 匿名函数 内置函数 一.三元表达式 name=input('姓名>>: ') res='True' if name == 'lee' e ...

  7. 三元表达式,递归,匿名函数,内置函数

    一 .三元表达式 只应用于条件成立返回一个值,条件不成立返回另一个值. 示例: name=input('姓名>>: ') res='SB' if name == 'alex' else ' ...

  8. 树形结构递归_递归和匿名函数

    戳上面的蓝字关注我,有干货哦! ❝ 编程语言中,函数Func(Type a,--)直接或间接调用函数本身,则该函数称为递归函数. ❞ 模拟实现树形结构的遍历 比如:我要遍历下图sublime_pyth ...

  9. 三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数(day4)

    一.三元表达式.列表推导式.生成器表达式 1.三元表达式name=input('姓名>>: ')res='SB' if name == 'alex' else 'NB'print(res) ...

  10. python lambda表达式的使用方法(匿名函数)

    文章目录 lambda函数简介 示例1:将存有文件名的字符串列表,运用正则表达式方法提取文件名中的数字,按照数字大小将文件名字符串列表重新排序 示例2:将存有hsv颜色空间的颜色元组列表,转换成rgb ...

最新文章

  1. org.springframework.data.redis 一次连接获取特定key所有k-v(pipeline)
  2. eruke注册中心搭建
  3. qt中关闭窗口资源释放问题
  4. Matrix calculus
  5. C语言实现队列ADT(Queue ADT)接口COMP2521(附完整源码)
  6. 导入xlsx,文件到sqlite3数据库
  7. 解决 Python pip 安装报错:Retrying (Retry(total=4, connect=None, read=None ...)) after connection
  8. 【Verilog HDL】语句的并发执行
  9. Replace Nested Conditional with Guard Clauses(以卫语句取代嵌套条件表达式)
  10. 【STP】生成树协议及STP 802.1D (上)
  11. AT指令集及常用指令
  12. 第 3 章 MCS-51 单片机指令系统
  13. 世界主要粮食作物和经济作物的生产及其分布
  14. C语音基础-----那些年我们踩过的坑(一)
  15. 秀气的爷们儿——2012的轩小样儿 2012年2月20日
  16. spring基础概述
  17. 编译原理实验 -- 文法分析
  18. Windows下VMware准备IOS开发环境
  19. PyTorch 入门:训练一个深度神经网络(DNN)
  20. 计算机网络 P2P应用

热门文章

  1. windows 系统新建 vue 项目的坑
  2. Linux 创建静态库(.a)和动态库(.so)
  3. 在自定义HttpHandler 中使用Session
  4. Java程序员要求具备的10项技能
  5. Klevgrand DAW Cassette for Mac(磁带模拟效果器插件)
  6. WiFi Explorer Mac版WiFi管理器常见问题解答
  7. Docker 删除所有容器和镜像,从头来过!
  8. 快速乘 (牛客 电音之王)
  9. 教你如何保持Tuxera NTFS For Mac软件的更新
  10. 和 Pipelining 说再见,cURL 放弃使用管道技术