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排序的更多相关文章

  1. Python 函数递归-三元表达式-列表生成式-字典生成式-匿名函数-内置函数

    上节课复习: 1. 无参装饰器 def 装饰器名字(func): def wrapper(*args,**kwargs): res = func(*args,**kwargs) return res ...

  2. Python 列表生成式 & 字典生成式

    Python 列表生成式 & 字典生成式 通过生成式可以更加简洁地生成列表和字典 列表生成式 对比 直接生成数据后加入列表示例: user_list = list() for i in ran ...

  3. python递归-三元表达式-列表生成式-字典生成式-匿名函数-部分内置函数-04

    递归 递归: # 函数在调用阶段直接或间接地又调用了自身 应用场景: # 将列表中的数字依次打印出来(循环的层数是你必须要考虑的点)   -->  l = [1, [2, [3, [4, [5, ...

  4. python生成式:列表、字典、集合

    python的3类生成式: 列表生成式 字典生成式 集合生成式 1.python列表生成式 my_data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] print(&quo ...

  5. 1、如何在列表,字典,集合种根据条件筛选数据?2、如何为元组中的每个元素命名,提高程序的可读性3、如何统计出序列中元素出现的频度4、如何根据字典中value的大小,对字典的key进行排序

    一.数据筛选: 处理方式: 1.filter函数在py3,返回的是个生成式. from random import randint data = [randint(-100,100) for i in ...

  6. python序列(列表,元组,字典)的常用排序

    列表 正向排序 sort() >>> list=[1,6,3,4,5,2] >>> list.sort() >>> list [1, 2, 3, ...

  7. Python: 字典列表: itemgetter 函数: 根据某个或某几个字典字段来排序列表

    问题:根据某个或某几个字典字段来排序Python列表 answer: 通过使用operator 模块的itemgetter 函数,可以非常容易的排序这样的数据结构 eg: rows = [ {'fna ...

  8. python关于字典嵌套字典,列表嵌套字典根据值进行排序

    python 对于字典嵌套字典, 列表嵌套字典排序 例:列表嵌套自字典:d = [{"name": '张三', 's': 68}, {'name': '李四', 's': 97}] ...

  9. python3排序 sorted(key=lambda)--实现对字典按value值排序

    使用python对列表(list)进行排序,说简单也简单,说复杂也复杂,我一开始学的时候也搞不懂在说什么,只能搜索一些英文文章看看讲解,现在积累了一些经验,写在这里跟大家分享, 1.sorted函数首 ...

随机推荐

  1. Beanshell断言

    Beanshell断言示例一:通过从数据库查询结果集,和从接口返回中解析json格式的返回内容,比较两者来验证sample请求是否成功 1>先通过JDBC PreProcessor把测试计划中所 ...

  2. Python服务Dokcer化并k8s部署实例

    这篇文章记录了我试验将一个基于python的服务docker化并k8s部署的过程. 服务介绍Docker化设计业务代码改造创建docker镜像K8S部署设计yaml文件运行服务介绍这是一个用 pyth ...

  3. 算法笔记 3.2 codeup1935 查找学生信息

    #include <stdio.h> #include <string.h> const int maxn = 1e3; struct student{ ]; ]; //!!! ...

  4. redis 4.x 安装哨兵模式 sentinel

    1.下载 http://download.redis.io/releases/redis-4.0.11.tar.gz 2.解压 tar zxvf redis-4.0.11.tar.gz 3.安装 cd ...

  5. Spring生态研习【三】:Spring-kafka

    1. 基本信息介绍 基于spring的kafka应用,非常简单即可搭建起来,前提是要有一个kafka的broker集群.我在之前的博文里面已经介绍并搭建了一套broker环境,参考Kafka研究[一] ...

  6. VUE 进行微信支付,解决 微信支付URL未注册

    使用history方式 比较坑吧就不吐槽了,说下实现方式 需要解决问题: 1.因为我的微信支付授权路由是:m.xxxx.com,this.$router.push('xxx')之后经常出现 [微信支付 ...

  7. os.rename 和os.replace

    f1 = open("hello.txt","w") f1.write("hello,my name is bobo.") f1.close ...

  8. PAT 甲级 1054 The Dominant Color (20 分)

    1054 The Dominant Color (20 分) Behind the scenes in the computer's memory, color is always talked ab ...

  9. 如何查看k8s存在etcd中的数据(转)

    原文 https://yq.aliyun.com/articles/561888 一直有这个冲动, 想知道kubernetes往etcd里放了哪些数据,是如何组织的. 能看到,才有把握知道它的实现和细 ...

  10. IIS小知识

    1.IIS的默认配置路径 IIS5.0默认配置文件路径C:\WINNT\system32\inetsrv\MetaBase.binIIS6.0默认配置文件路径C:\WINDOWS\system32\i ...