19.内置函数二

  1. abs():绝对值
lst = [1,2,-3,1,2,-5]
print([abs(i) for i in lst])
  1. enumerate("可迭代对象","序号起始值"):枚举获取键和值,起始值默认为0
lst [1,2,-3,1,2,-5]
print([i for i in enumerate(lst)])
print(i for i in enumerate(lst,10))
  1. max():求最大值,放可迭代对象
  2. min():最小值
  3. sum(list,tuple,set):求和,可指定起始值
  4. range():范围
  5. print(sep = ":",end="\t"):sep-->多个元素的连接符,end-->默认为\n
print(123,file = open('1.txt','w'))#输出到文件内
  1. list:
print(list('alex'))#结果是迭代出来的
  1. dict:
print(dict(key = 1, a = 'alex'))#结果{'key':1,'a':'alex'}

#面试:定义
print(dic(((1,2),(2,3),(3,4)))) print(dict([i for i in enumerate(range(20),1)]))
  1. zip():拉链,按照最少的合并,按索引合并,字典是按键合并,与值无关
lst1 = [1,2,3,4,5]
lst2 = ['a','b','c','d','f']
lst3 = ["alex",'ewr',"你好",""]
lst4 = {'k1':1,'k2':2}
print(list(zip(lst1,lst2))) print(dict(list(zip(lst1,lst2))))#面试
print(dict(zip(lst1,lst2))) print(list(zip(lst1,lst2,lst3))) print(list(zip(lst4,lst1)))
  1. dit():查看当前函数的方法
print(dir(list))
g = range(0,10)
from collections import Iterable,Iterator
print(isinstance(g,Iterable))#判断是否是可迭代对象
print(isinstance(g,Iterator))#判断是否是迭代器

20.匿名函数与内置函数三(重要)

重要的内置函数和匿名函数

1.匿名函数:

lambda -->定义函数(一行函数),x,y 形参 x+y 返回值,只能返回一个数据类型。形参可以不写,返回值必须写

匿名函数的名字叫做lambda

f = lambda x, y:x+y
print(f(1,2)) f = lambda x, y:(x,y)
print(f(1,2))
print(f.__name__())#函数名就叫做lambda print(lambda x:x)#结果:内存地址
print((lambda x:x)(2))#调用函数 #面试1
print([lambda i:i*i for i in range(10)])#返回十次匿名函数的内存地址
lst = [lambda i:i*i for i in range(10)]
print(lst[2](2))
#解构
lst = []
for i in range(10):
def func(i):
return i*i
lst.append(func)
print(lst[2](3))#结果 9 #2.不写形参
lst = [lambda :i*i for i in range(10)]
print(lst[2]())
#解构
lst = []
for i in range(10):
def func():
return i*i
lst.append(func)
print(lst[2]())#结果 81 #
lst = (lambda i:i*i for i in range(5))#报错
print((lambda i:i*i for i in range(5)))#生成器的地址 #

2.内置函数三(重要)

  1. format()
print(format(13,">20"))#右对齐
print(format(13,"<20"))#左对齐
print(format(13,"^20"))#居中
print(format(13,"b"))#二进制 #进制,8位显示
print(format(13,"08b"))#二进制
print(format(13,"08d"))#十进制
print(format(13,"08o"))#八进制
print(format(13,"08x"))#十六进制
  1. filter("函数","可迭代对象"):过滤,写函数的时候,可指定过滤条件
lst = [1,2,3,4,5,6]
def func(s):
return s>3
print(filter(func,lst))#返回对象内存地址
print(list(filter(func,lst)))#返回lst中>3的值 func就是定义的条件,lst是迭代对象
#用lambda
print(list(filter(lambda x:x>3,lst)))
  1. map():对象映射,对可迭代对象中的每个元素进行加工
print(map(lambda x:x+1,[1,2,3,4,8,5]))#返回地址
print(list(map(lambda x:x+1,[1,2,3,5,4,6])))#
  1. reversed():反转,原数据没变
  2. sorted():排序,key,指定排序规则--不用list转换
s1 = "alex"
print(reversed(s1))#结果为内存地址
print(list(reversed(s1)))#结果:['x', 'e', 'l', 'a'] lst = [1,2,3,4,5]
lst.reverse()
print(s1) lst1 = list(reversed(lst))
print(lst)
print(lst1) lst = [1,2,36,4,8]
print(sorted(lst))
print(lst)#原数据不变
#降序
print(sorted(lst,reverse=Treu))
#key
dic = {'k1':1,'k2':3,'k3':56}
print(sorted(dic,key=lambda x:dic[x],reverse=True))
#key指定查找最大值时的规则
print(max([1,2,-33,5],key=abs))
  1. reduce():累计算,面试
from functools import reduce
print(reduce(lambda x,y:x+y,[1,2,3]))

python函数知识六 内置函数二、匿名函数与内置函数三(重要)的更多相关文章

  1. Python基础知识(六)------小数据池,集合,深浅拷贝

    Python基础知识(六)------小数据池,集合,深浅拷贝 一丶小数据池 什么是小数据池: ​ 小数据池就是python中一种提高效率的方式,固定数据类型使用同一个内存地址 代码块 : ​ 一个文 ...

  2. python基础知识六 文件的基本操作+菜中菜

    基础知识六 文件操作 ​ open():打开 ​ file:文件的位置(路径) ​ mode:操作文件模式 ​ encoding:文件编码方式 ​ f :文件句柄 f = open("1.t ...

  3. 牛客训练六:海啸(二维树状数组+vector函数的使用)

    题目链接:传送门 思路: 二维树状数组, vector(first,last)函数中assign函数相当于将first中的函数清空,然后将last中的值赋值给first. 参考文章:传送门 #incl ...

  4. python基础知识六

    博客园的博文对每篇博文的长度似乎做了限制 面向对象编程, 在程序何种,根据操作数据的函数或语句块来设计程序.这被成为面向过程的编程.还有一种把数据和功能结合起来,用称为对象的东西包裹起来组织组织程序的 ...

  5. 廖雪峰网站:学习python基础知识—list和tuple(二)

    1.list """ Python内置的一种数据类型是列表:list. list是一种有序的集合,可以随时添加和删除其中的元素. """ c ...

  6. python基础知识讲解——@classmethod和@staticmethod的作用

    python基础知识讲解——@classmethod和@staticmethod的作用 在类的成员函数中,可以添加@classmethod和@staticmethod修饰符,这两者有一定的差异,简单来 ...

  7. python基础知识15---三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数

    阅读目录 一 三元表达式.列表推导式.生成器表达式 二 递归与二分法 三 匿名函数 四 内置函数 五 阶段性练习 一. 三元表达式.列表推导式.生成器表达式 1 三元表达式 name=input('姓 ...

  8. 【Python全栈笔记】04 [模块二] 18 Oct lambda表达式, 内置函数

    lambda表达式 lambda表达式是函数的一种简化,如下面两种函数定义方法,实际上效果是一样的. 使用lambda表达式的函数,func2是函数名,lambda: 后面的123 即为返回值. de ...

  9. 百万年薪python之路 -- 内置函数二 -- 最常用的内置函数

    1.内置函数 1.1 匿名函数 匿名函数,顾名思义就是没有名字的函数(其实是有名字的,就叫lambda),那么什么函数没有名字呢?这个就是我们以后面试或者工作中经常用匿名函数 lambda,也叫一句话 ...

随机推荐

  1. webpack的loader的原理和实现

    想要实现一个loader,需要首先了解loader的基本原理和用法. 1. 使用 loader是处理模块的解析器. module: { rules: [ { test: /\.css$/, use: ...

  2. 微信小程序弹窗

    wxml <view class="content"> <button bindtap="popSuccessTest">成功提示弹窗& ...

  3. 关于Windows系统里的事后调试

    我一直在想,应用程序抛出未处理的异常和附加到进程的调试器之间会发生什么.显然这些信息就在我眼皮底下,但我是瞎子.Windows调试器关于事后调试的文档包含了您想要知道的所有详细信息. 最常见的应用程序 ...

  4. PowerDesigner 画流程图

    原因: 以前赶时间写了n长一个类,现在又增加新需求了,but以前怎么写的忘了,虽然注释都有,一个一个方法的看很累,准备把它用面向对象改造一下,不知道时间够不,先试一试在说.之前设计数据库用的Power ...

  5. 洛谷P2029跳舞

    题目 DP, 用的\(dp[i][j]\)表示\(i\)之前的数选了\(j\)个得到的最大结果,然后状态转移方程应该是 \[if (j \% t == 0)~~dp[i][j] = max(dp[i] ...

  6. EasyEarth三维可视化解决方案——智慧河长

    EasyEarth—— 为河长装上“千里眼.顺风耳” 为各级河长办应急指挥.任务指派. 实绩考核提供快速直观的 高效.精准.智能化决策平台. 河长制背景 我国治水工作呈现出新老问题交织态势,河湖管理保 ...

  7. Centos分区/超过2T的磁盘

    centos分区大于2TB 用parted分区工具分区 fdisk -l  查看要分的区(我这里是/dev/vdb) parted /dev/vdb    #进入/dev/vdb进行分区 mktabl ...

  8. Vue 打包部署到服务器后,非主页刷新后出现404问题解决

    开心把项目部署到服务上,从头到尾点了一遍,发现没有问题,以为就可以大功告成,没想到刷新页面时出现 被破泼了一脸的凉水,更奇怪的事首页没有问题,只有其他页面出现,在调戏了很久的度娘后,才从坑里跳出来,以 ...

  9. TICK/TIGK运维栈安装运行 docker-compose【下】

    InfluxDB 构建Dockerfilevim /opt/influxdb-docker/Dockerfile FROM influxdb COPY influxdb.conf /etc/influ ...

  10. 搭建高可用rabbitmq集群及spring boot实现集群配置

    java spring boot配置: //具体参看了配置的源码 org.springframework.boot.autoconfigure.amqp.RabbitProperties //Rabb ...