zip()函数

两个参数一一对应,参数是序列类型,序列包括列表,元组,字符串,当两个序列不等长时,按公共最长部分匹配,形似“拉链”。

max()和min()函数

以max()为例,min()类似,只是大小相反:

max()进行比较时所传入的数据类型一定要是可迭代对象,循环依次取出每个元素进行比较。

比较时从第一个元素开始,依次比较,对于字典的比较,其比较的的是key值的大小,若想按values比较,就需要用到zip()函数

zip(dic.values(),dic.keys())

例如,当传入一个字典people,key值为name,value为age,按value比较:

max(people,key=lambda dic:dic['age'])

这一句代码就等价于

ret[]
for item in people:
ret.append(item['age'])
print(ret)

即:取出来字典中每组的age值,再用max()比较。

总结max()比较:

1.max()处理的是可迭代对象,相当于一个for循环取出每个元素进行比较,注意,不同类型之间不能比较

2.每个元素进行比较,是从每个元素的第一个位置进行比较,如果这一位置分出大小,后面的都不需要比较了,直接得出俩元素的大小。

3.max()和min()相反,方法相同。

sorted()排序

排序也是在程序中经常用到的算法。无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小。

Python内置的sorted()函数就可以对list进行排序:

>>> sorted([36, 5, -12, 9, -21])
[-21, -12, 5, 9, 36]

此外,sorted()函数也是一个高阶函数,它还可以接收一个key函数来实现自定义的排序,例如按绝对值大小排序

>>> sorted([36, 5, -12, 9, -21], key=abs)
[5, 9, -12, -21, 36]

sorted()也是一个高阶函数。用sorted()排序的关键在于实现一个映射函数

Python进阶【第六篇】内置函数中好玩的几个(今天写的太水)的更多相关文章

  1. [Python笔记]第四篇:内置函数

    本篇主要内容:内置函数 函数 参考:https://docs.python.org/3.5/library/functions.html 内置函数列表 一.数学运算类 abs(x)求绝对值 >& ...

  2. python学习笔记六:内置函数

    一.数学相关 1.绝对值:abs(-1) 2.最大最小值:max([1,2,3]).min([1,2,3]) 3.序列长度:len('abc').len([1,2,3]).len((1,2,3)) 4 ...

  3. Python基础(六)-内置函数

      map().filter().reduce() map(func,iterator) --> filter(func,iterator) --> reduce(func,iterato ...

  4. 查看python内部模块命令,内置函数,查看python已经安装的模块命令

    查看python内部模块命令,内置函数,查看python已经安装的模块命令 可以用dir(modules) 或者用 pip list或者用 help('modules') 或者用 python -m  ...

  5. Python学习(八) —— 内置函数和匿名函数

    一.递归函数 定义:在一个函数里调用这个函数本身 递归的最大深度:997 def func(n): print(n) n += 1 func(n) func(1) 测试递归最大深度 import sy ...

  6. SSE 系列内置函数中的 shuffle 函数

    SSE 系列内置函数中的 shuffle 函数 邮箱: quarrying@qq.com 博客: http://www.cnblogs.com/quarryman/ 发布时间: 2017年04月18日 ...

  7. SSE系列内置函数中的shuffle函数

    SSE 系列内置函数中的 shuffle 函数 邮箱: quarrying@qq.com 博客: http://www.cnblogs.com/quarryman/ 发布时间: 2017年04月18日 ...

  8. python之路:进阶篇 内置函数

     li = [11, 22, 33] news = map(  li = [100, 2200, 3300] news = map(  [13, 24, 35] [11, 11, 11] [22, 4 ...

  9. python大法好——递归、内置函数、函数进阶

    1.递归(自己干自己) def fun(n): n=n/2 print(n) if(n>2) fun(n) #函数调用 fun(10) 结果是5 2 1 0 递归的执行过程:递归执行到最里面一层 ...

随机推荐

  1. vux icon

    官网:https://doc.vux.li/zh-CN/components/icon.html <icon type="success"></icon>& ...

  2. 进程池线程池 协程 gvent 单线程实现并发套接字

    1.基于多线程实现套接字服务端支持并发 服务端 from socket import * from threading import Thread def comunicate(conn): whil ...

  3. solr整合spring

    <!-- 单机版solr服务配置 --> <!-- <bean id="httpSolrServer" class="org.apache.sol ...

  4. ASP.Net中的四种状态保持机制

    每个人上网可多有过这样的情况,当我们登陆某个网站时,在登陆的旁边会有一个 "记住我" 的复选框,有的网站还会让用户选择记住我.这个记住我是怎么实现的呢? 其实就用利用的是cooki ...

  5. MyBatis SpringMVC映射配置注意

    applicationContext.xml中要配置 <!-- MyBatis 的 sqlSessionFactory --> <bean id="sqlSessionFa ...

  6. nginx 长连接keeplive

    发现后台日志打印太多 FD打开太多的日志. 处理思路: 修改nginx upstream的长连接 http://blog.csdn.net/gzh0222/article/details/852363 ...

  7. CentOS6.5安装RHBase

    1.安装依赖包 yum install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel lib-dev ...

  8. Selenium基础知识(一)环境与搜索

    所需环境: 1.python2.7 + pycharm 2.Selenium 3.浏览器驱动(IEDriverServer.exe)  这里使用的是ie浏览器 将驱动放到一个环境变量路径,这里直接放在 ...

  9. GIS 网站 参考网站

    GIS 网站 参考:https://malagis.com/arcgis-operate-videos-example-38-summary.html

  10. react native中使用native-echarts

    第一步,下载依赖 npm install native-echarts --save 第二步,引入 import Echarts from 'native-echarts'; 第三步,使用 expor ...