(八)lambda、列表生成式、字典转list排序
1、函数返回多个值:
1)函数如果return多个值的话,会把返回的这几个值放在一个元组里面
def say():
num1 = 1
num2 = 2
num3 = 3
return num1,num2,num3
res = say()
print(res) >>> (1, 2, 3)
2)函数如果return多个值的话,可以用多个变量来分别接收
def say():
num1 = 1
num2 = 2
num3 = 3
return num1,num2,num3
res1,res2,res3 = say()
print(res1) #>>>1
print(res2) #>>>2
print(res3) #>>>3
2、lambda:匿名函数,函数功能很简单,只用一次,不需要定义
res = lambda x:x+1 #冒号前面的是返回值,冒号后面是函数体,也是函数的处理逻辑
print(res(1)) >>> 2
3、列表生成式(列表)
l = [i for i in range(1,101,2)] l = [i for i in range(1,101) if i%2==1] #或者这样写
print(l) >>>[1, 3, 5, 7, 9...]
如果列表生成式外面是()的形式:l就不是list了,而是一个生成器
l = (i for i in range(1,101) if i%2==1)
print(l) #l是一个生成器 #print(l.__next__()) #生成器调用一次取一个值 for i in l:
print(i) >>> <generator object <genexpr> at 0x00BFD8C8>
>>>1 3 5 7 9...
#生成器每次循环时会按照规则只计算出一个元素,放在内存中,比list省内存
#list是把所有的元素都放在内存里面
4、三元表达式
a = 5
b = 4
c = a if a>b else b #三元表达式
print(c) 不用三元表达式就是如下: a = 5
b = 4
if a>b:
c = a
else:
c = b
print(c)
5、字典是无序的,直接对字典排序是不存在的。先要把字典转成list再排序
#sorted():每次自动循环取二维数组里面的元素
d = {'a':5,'b':2,'c':3}
print(d.items()) #得到一个二维数组
res = sorted(d.items(),key=lambda x:x[0]) #key=字典的key值,进行排序
res = sorted(d.items(),key=lambda x:x[1]) #根据字典的value进行排序
print(res)
>>> dict_items([('b', 2), ('a', 5), ('c', 3)])
>>> [('a', 5), ('b', 2), ('c', 3)]
循环时取多个:
l = [ [1,2,3],[3,4,5],[5,6,7] ]
for a,b,c in l: #a,b,c是3个,上面的小list每个也要包含3个元素?
print(a,b,c)
6、定义函数时,告诉别人应该传什么类型的参数
def is_float(s:str):
pass
(八)lambda、列表生成式、字典转list排序的更多相关文章
- Python 函数递归-三元表达式-列表生成式-字典生成式-匿名函数-内置函数
上节课复习: 1. 无参装饰器 def 装饰器名字(func): def wrapper(*args,**kwargs): res = func(*args,**kwargs) return res ...
- Python 列表生成式 & 字典生成式
Python 列表生成式 & 字典生成式 通过生成式可以更加简洁地生成列表和字典 列表生成式 对比 直接生成数据后加入列表示例: user_list = list() for i in ran ...
- python递归-三元表达式-列表生成式-字典生成式-匿名函数-部分内置函数-04
递归 递归: # 函数在调用阶段直接或间接地又调用了自身 应用场景: # 将列表中的数字依次打印出来(循环的层数是你必须要考虑的点) --> l = [1, [2, [3, [4, [5, ...
- python生成式:列表、字典、集合
python的3类生成式: 列表生成式 字典生成式 集合生成式 1.python列表生成式 my_data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] print(&quo ...
- 1、如何在列表,字典,集合种根据条件筛选数据?2、如何为元组中的每个元素命名,提高程序的可读性3、如何统计出序列中元素出现的频度4、如何根据字典中value的大小,对字典的key进行排序
一.数据筛选: 处理方式: 1.filter函数在py3,返回的是个生成式. from random import randint data = [randint(-100,100) for i in ...
- python序列(列表,元组,字典)的常用排序
列表 正向排序 sort() >>> list=[1,6,3,4,5,2] >>> list.sort() >>> list [1, 2, 3, ...
- Python: 字典列表: itemgetter 函数: 根据某个或某几个字典字段来排序列表
问题:根据某个或某几个字典字段来排序Python列表 answer: 通过使用operator 模块的itemgetter 函数,可以非常容易的排序这样的数据结构 eg: rows = [ {'fna ...
- python关于字典嵌套字典,列表嵌套字典根据值进行排序
python 对于字典嵌套字典, 列表嵌套字典排序 例:列表嵌套自字典:d = [{"name": '张三', 's': 68}, {'name': '李四', 's': 97}] ...
- python3排序 sorted(key=lambda)--实现对字典按value值排序
使用python对列表(list)进行排序,说简单也简单,说复杂也复杂,我一开始学的时候也搞不懂在说什么,只能搜索一些英文文章看看讲解,现在积累了一些经验,写在这里跟大家分享, 1.sorted函数首 ...
随机推荐
- LVS DR模式搭建、keepalived+lvs
1.LVS DR模式搭建 条件: 即三台机器,在同一内网. 编辑脚本文件:/usr/local/sbin/lvs_dr.sh #! /bin/bashecho 1 > /proc/sys/net ...
- Js高级 部分内容 面向对象
1.单列模式 2.工厂模式 3.构造函数 (1)类 js天生自带的类 Object基类 Function Array String Number Math Date Boolean Regex ...
- 安卓控制LED驱动编写
开发平台 * 芯灵思SinlinxA33开发板 淘宝店铺: https://sinlinx.taobao.com/ 嵌入式linux 开发板交流 QQ:641395230 打开Android Stud ...
- 函数和对象 及 prototype和__proto__
对象有 __proto__ 函数有 prototype 对象的__proto__指向构造自己的函数的prototype 但有一例外 var Obj = {v:99}var pObj = Object ...
- Python——列表、元祖、字典、集合的基本操作
列表 1. 列表——增 (1)append li = ['xcsd', 'cdc', [1, 5, 2], 'eht', '辛辰'] li.append('nihao') print(li) #['x ...
- System Generator 生成IP核在Vivado中进行调用
System Generator 生成IP核在Vivado中进行调用 1.首先在Simulink中搭建硬件模型 2.查看仿真结果 3.资源分析与时序分析 4.启动vivado,关联生成的IP核 5.调 ...
- repos配置
- DllImport使用
1.Dll引用路径 (1)exe运行程序所在的目录 (2)System32目录 (3)环境变量目录 (4)自定义路径,如:DllImport(@"C:\OJ\Bin\Judge.dll&qu ...
- Java笔记Spring(一)
一.Spring框架 源码地址:https://github.com/spring-projects/spring-framework 构建工具:Gradle,Gradle教程:https://www ...
- Resilience4j usage
1. pom 1) normal <dependency> <groupId>io.github.resilience4j</groupId> <artifa ...