什么是内置函数?

就是Python给你提供的,拿来直接用的函数,比如print,input等等。其实就是我们在创建.py的时候python解释器所自动生成的内置的函数,就好比我们之前所学的作用空间

内置空间就是python文件在创建的时候python解释器所自动创建的

重要的 内置函数:

***

eval:

eval:执行字符串类型的代码,并返回最终结果。(其实就是对字符串内的类型进行操作 比如你字符串内事int类型的  相加相乘之类的  直接进行操作 如果字符串内事列表或者字典直接把列表字典给原样返还)

print(eval('3+4'))  #
print(eval("{'name':'老南京', 'age':17}")) #{'name':'老南京', 'age':17}
print(eval("['1+3']")) # ['1+3']

exec:执行字符串类型的代码,流程语句。   就是字符串内的该执行的内容给执行出来 (你字符串的只是在里面是一种显示没有执行exec是把它给执行)

ret = '''
li = [1, 2, 3]
for i in li :
print(i) '''
exec(ret) #就是把字符串内的所有该执行的用这个方法在字符串外面给执行了

sum:对可迭代对象进行求和计算(可设置初始值)。 但是最多只能两个元素相加

print(sum([1,2,3,4])) #
print(sum((1,2,3,),100)) #
print(sum({1:2,3:4}))#字典只是把key值给相加

max:返回可迭代对象的最大值(可加key,key为函数名,通过函数的规则,返回最大值)

print(max([1,2,3,4])) #
print(max([1, 2, 3, 4,-9], key=abs)) #-9 abs表示绝对值

min和max所有的使用都一样只不过是返回最小值 两个都是只能对可迭代对象进行使用

print(min((1,2,3,4,5)))
print(min({3:2,4:1})) #对字典使用只能对字典的key进行比较

reversed:将一个序列翻转,并返回此翻转序列的迭代器。  就是你用reversed在对一个可迭代的队形进行操作的就把它变成了迭代器

ret  =reversed(['a', 'b', 1, 2, 3])
print(ret)
print(ret.__next__()) #因为reversed已经把可迭代的对象给转化为迭代器了所以需要用__next__来取值

repr:返回一个对象的string形式(原形毕露)。  就是字符串内是什么形式就返还什么形式

print(repr('{"name":"alex"}'))  #字符串内含有的字典给返回出来  因为字典也是放在了字符串内 此时它就是字符串了
print(repr('(1,2,3)'))

sorted 对所有可迭代的对象进行排序操作。 可加key它和sort相比较就是多加了个key就是可以定义怎么进行翻转

li = [1, -2, -7, 8, 5, -4, 3]
print(sorted(li)) #从小到大排序
print(sorted(li , reverse = True)) #从大到小排序
print(sorted(li, reverse = True, key =abs)) #按照绝对值给排序

enumerate 枚举 就是返回一个枚举对象 (0, seq[0]), (1, seq[1]), (2, seq[2]),

li = ['老男孩','alex','wusir','嫂子','zhaoyun']  #返回一个枚举对象你一一打印这个枚举对象内的所有值就会出现对应的序列号
for k, v in enumerate(li): #0 老男孩
print(k,v) #1 alex
#2 wusir
#3 嫂子
#4 zhaoyun
l1 = ('laowang', 'zhangsan',1, 2, 3,4)
for i in enumerate(l1):
print(i)

zip 拉链方法   就是按照最短的可迭代对象来进行组合这个组合只能是从上到下 并且按照最短的那个迭代对象来组合

函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同。

l1 = [1, 2, 3, 4, 5]
l2 =(5, 6, 7,)
l3 =['laowang', 'sb', 5, 6]
# print(zip(l1, l2, l3))
for i in zip(l1, l2, l3) : # (1, 5, 'laowang')
print(i) # (2, 6, 'sb')
# (3, 7, 5)

filter:过滤·。(判读条件) 其实就是提供一个场所让你传进俩条件和可迭代对象进行判断  同时也是生成了一个迭代器

def func(x):return x%2 == 0
ret = filter(func,[1, 2, 3, 4, 5, 6, 7]) #func是判断条件 后面是需要判断的内容
print(ret)
for i in ret :
print(i)

map:  (判读条件)会根据提供的函数对指定序列做映射。使用map的同时也是创建了一个迭代器 需要用__next__来取值或者转化为list之类的来取值

def s(x):
return x**2
ret =map(s, [1,2,3,4,5])
print(ret.__next__())
print(ret.__next__())
L = [1,2,3]
L = map(str,L) # 把L转化位str类型的生成器
print(L.__next__())

小应用:如何实现 “1,2,3” 变成 [‘1’,’2’,’3’] ?

L = [1,2,3]
NL = list(map(str,L))
print(NL)

map和fifter都是判读条件但是map不可以删除东西 fifter可以删除里面的元素

匿名函数:

匿名函数:为了解决那些功能很简单的需求而设计的一句话函数。

#这段代码
def calc(n):
return n**n
print(calc(10)) #换成匿名函数
calc = lambda n:n**n
print(calc(10))
res=map(lambda x,y:x+y,[1, 3, 5, 7, 9],[2,4,6,8])   #就是把两个列表相加一起  但是是一一对应相加
print(res.__next__())
print(res.__next__())
print(res.__next__())
print(res.__next__()) #但是 不能超过那个最少个映射

函数名 = lambda 参数 :返回值

#参数可以有多个,用逗号隔开
#匿名函数不管逻辑多复杂,只能写一行,且逻辑执行结束后的内容就是返回值
#返回值和正常的函数一样可以是任意数据类型

我们可以看出,匿名函数并不是真的不能有名字。

匿名函数的调用和正常的调用也没有什么分别。 就是 函数名(参数) 就可以了~~~

匿名函数与内置函数举例:

res = filter(lambda x: x>10,[5,8,9,11,13])
# for i in res :
# print(i)
print(res.__next__())
print(res.__next__())

python之内置函数,匿名函数的更多相关文章

  1. python之内置函数(二)与匿名函数、递归函数初识

    一.内置函数(二)1.和数据结构相关(24)列表和元祖(2)list:将一个可迭代对象转化成列表(如果是字典,默认将key作为列表的元素).tuple:将一个可迭代对象转化成元组(如果是字典,默认将k ...

  2. python笔记4 内置函数,匿名函数.递归函数 面向对象(基础, 组合,继承)

    内置函数 eval和exec eval :执行字符串中的代码并将结果返回给执行者,有返回值 exec:执行字符串中的代码,往往用于执行流程语句,没有返回值. s1 = '1+2' s2 = 'prin ...

  3. python基础学习Day14 内置函数 匿名函数

    一.内置函数里几个高频重要函数 (1)min\max函数的用法 以min函数的为例: min:返回可迭代对象的最小值(可加key,key为函数名,通过函数的规则,返回最小值). l1 =[(,),(, ...

  4. Python练习题-1.使用匿名函数对1~1000求和,代码力求简洁。

    Python 练习 标签(空格分隔): Python Python练习题 Python知识点 一.使用匿名函数对1~1000求和,代码力求简洁. 答案: In [1]: from functools ...

  5. Python进阶:函数式编程(高阶函数,map,reduce,filter,sorted,返回函数,匿名函数,偏函数)...啊啊啊

    函数式编程 函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就可以把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计 ...

  6. (转)Python进阶:函数式编程(高阶函数,map,reduce,filter,sorted,返回函数,匿名函数,偏函数)

    原文:https://www.cnblogs.com/chenwolong/p/reduce.html 函数式编程 函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数 ...

  7. python学习三十三天函数匿名函数lambda用法

    python函数匿名函数lambda用法,是在多行语句转换一行语句,有点像三元运算符,只可以表示一些简单运算的,lambda做一些复杂的运算不太可能.分别对比普通函数和匿名函数的区别 1,普通的函数用 ...

  8. 初学 Python(十三)——匿名函数

    初学 Python(十三)--匿名函数 初学 Python,主要整理一些学习到的知识点,这次是匿名函数. # -*- coding:utf-8 -*- #关键字lambda定义的函数都是匿名函数 #做 ...

  9. Python:lambda表达式(匿名函数)

    lambda表达式: 通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数. 当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便. 在Python中 ...

  10. Learning Python 012 函数式编程 2 返回函数 匿名函数 装饰器 偏函数

    Python 函数式编程 2 返回函数 返回函数的意思就是:函数作为返回值.(高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回.) 举个例子:实现一个可变参数的求和. 正常的函数: de ...

随机推荐

  1. 为apache提供sftp文件传输服务

    一.安装apache yum install httpd 二.为 /var/www/html 创建ftp账号www useradd -M -d /var/www/html www 三.更改ssh配置文 ...

  2. apk反编译——基础是内功,得牢,飞跃还得多看源码,不同思想的碰撞才能产生火花,加油!!!!!!!!

    1.获取java源代码 1.1 dex2jar&jd-gui dex2jar:将apk反编译成class文件(classes.dex转化成jar文件) jd-gui:查看APK中classes ...

  3. 《LeetBook》leetcode题解(8): String to Integer (atoi) [E]——正负号处理

    我现在在做一个叫<leetbook>的免费开源书项目,力求提供最易懂的中文思路,目前把解题思路都同步更新到gitbook上了,需要的同学可以去看看 书的地址:https://hk029.g ...

  4. Java新特性之Nashorn的实例详解

    Nashorn是什么 Nashorn,发音“nass-horn”,是德国二战时一个坦克的命名,同时也是java8新一代的javascript引擎--替代老旧,缓慢的Rhino,符合 ECMAScrip ...

  5. java突破------一撸到底(做Java开发,遇到瓶颈是保持现状还是寻求突破?)

    java突破------一撸到底(做Java开发,遇到瓶颈是保持现状还是寻求突破?) 很多人做Java开发2.3年之后,都会觉得自己遇到了瓶颈.什么都会又什么都不会,如何改变困境,为什么很多人写了7. ...

  6. JetBrains 产品激活码

    激活码 K03CHKJCFT-eyJsaWNlbnNlSWQiOiJLMDNDSEtKQ0ZUIiwibGljZW5zZWVOYW1lIjoibnNzIDEwMDEiLCJhc3NpZ25lZU5hb ...

  7. 把AspDotNetCoreMvc程序运行在Docker上-part1

    接<基于ASP.Net Core学习Docker技术第一步:在CentOS7安装Docker平台>这个博文,在搭建完成Docker平台之后,可以开始让aspdotnetcore程序运行在d ...

  8. Tomcat源码分析——请求原理分析(中)

    前言 在<TOMCAT源码分析——请求原理分析(上)>一文中已经介绍了关于Tomcat7.0处理请求前作的初始化和准备工作,请读者在阅读本文前确保掌握<TOMCAT源码分析——请求原 ...

  9. ubuntu下搭建ecshop

        最近在看ecmobile的开源项目,可以从http://www.ecmobile.cn/agreement.html下载源码或者从github上下载源码https://github.com/G ...

  10. 仿淘宝头像上传功能(三)——兼容 IE6 浏览器。

    前两篇目录: 仿淘宝头像上传功能(一)——前端篇. 仿淘宝头像上传功能(二)——程序篇. 仿淘宝头像上传功能(三)——兼容 IE6 浏览器 之前的这两篇虽然实现了功能,但不兼容低版本浏览器,而且有些浏 ...