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. centos安装VirtualBox增强包VBoxGuestAdditions

    1.如果你的CentOS 版本早于 6,那么需要在 /etc/grub.conf 中添加一行 divider=10,以将这个参数传递给核心,以减少 idle CPU load.   2.#yum up ...

  2. linux下(Window当然也可以)解决idea创建maven项目导入过慢问题

    1.正常创建maven web项目 2.见下图,选择加号 3.弹出的框中填入archetypeCatalog----internal,确定即可

  3. C++之string类型详解

    C++之string类型详解 之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够.字符串长度等等,而且作为一个泛型类出现,他集成的操作函 ...

  4. spring cloud/spring boot同时支持http和https访问

    l老规矩为大家祭出原帖:https://www.cnblogs.com/lianggp/p/8136540.html  不再转述

  5. 解决使用C/C++配置ODBC链接中文显示为问号(?)的问题

    使用VS2015中使用OBDC连接到数据库时,数据库可以正常显示,但是在VS上输出是乱码,如图: 在数据库中course表显示: vs程序结果显示: 查找原因,因为char默认读ascii型,只读到1 ...

  6. Linux服务安装配置总结

  7. python中str函数isdigit、isdecimal、isnumeric的区别

    num = "1" #unicodenum.isdigit() # Truenum.isdecimal() # Truenum.isnumeric() # True num = & ...

  8. vue-demo(初级)

    在使用WebStorm前把字符编码等等设置好! 使用WebStorm打开vue项目等待ide索引加载完成 注意要让WebStorm可以创建vue文件需要以下步骤: <template> & ...

  9. Property ‘password’ threw Exception

    问题描述: Maven项目在tomcat启动的时候总是报Propety 'password' threw exception异常时,说明password不对,但核对之后没有问题 解决方案: 核对pas ...

  10. Vue 移动端常用tap事件封装

    基于Vue的移动端项目,有些时间原生并没用提供,需要我们自己手动封装,可以封装一些自定义指令来供全局使用. 本文封装了 tap, swipe, swipeleft, swiperight, swipe ...