https://www.processon.com/view/link/5c10da0ce4b099ae3e137bf6

1.内置函数

  内置函数就是python中提供的,可以直接拿来用的函数,比如print,input这样的.到python3.6.2版本时,python一共提供了68个内置函数

作用域相关:

    locals() 返回当前作用域中的名字
globals() 返回全局作用域中的名字

迭代器相关:

range()  生成数据

next()    迭代器向下执行一次,内部实际使用了__next__()方法返回迭代器的下一个项目

iter()      获取迭代器,内部实际使用的是__iter__()方法来获取迭代器

字符串类型代码的执行

eval()  执行字符串类型的代码,并返回最终结果

print(eval('2+2'))  # 4
n = 8
print(eval('2+n')) # 10 def func():
print(666)
eval('func()') # 666

exec()  执行字符串类型的代码

exec("""
for i in range(10):
print(i)
""") exec("""
def func():
print("我是周杰伦")
func()
""")

compile() 将字符串类型的代码变异.代码对象能够通过exec语句来执行或者eval()进行求值

'''
参数说明:
1. resource 要执⾏行行的代码, 动态代码⽚片段
2. ⽂文件名, 代码存放的⽂文件名, 当传⼊入了了第⼀一个参数的时候, 这个参数给空就可以了了
3. 模式, 取值有3个,
1. exec: ⼀一般放⼀一些流程语句句的时候
2. eval: resource只存放⼀一个求值表达式.
3. single: resource存放的代码有交互的时候. mode应为single
''' code1 = 'for i in range(10): print(i)'
c1 = compile(code1,"",mode='exec')
exec(c1) code2 = '1+2+3'
c2 = compile(code2,"",mode='eval')
a = eval(c2)
print(a) code3 = 'name = input('请输入你的名字:')'
c3 = compile(code3,"",mode = 'single')
exec(c3)
print(name)

有返回值的字符串形式的代码用eval().没有返回值的字符串形式的代码用exec().一般很少用到compile()

  输入和输出相关:   

input() 获取用户输入的内容
print() 打印输出

  内存相关:

hash() 获取到对象的哈希值(int,str,bool,tuple)
id() 获取到对象的内存地址

  文件操作相关:

open()用于口打开一个文件,创建一个文件句柄

  模块相关:

__import__() 用于动态加载类和函数

  帮助:

help() 函数用于查看函数或模块用途的详细说明

  调用相关:    

callable() 用于检查一个对象是否是可调用的,如果返回True,objuect有可能调用失败,但如果返回False,那调用绝对不会成功

  查看内置属性:

dir()  查看对象的内置属性,方法,访问的对象中的__dir__()方法

  基础数据类型相关:

 数字相关:
bool() 将给顶的数据转换成bool值,如果不给值.返回False
int() 将给定的数据转换成int 值,如果不给治,返回0
float() 将给定的数据转换成float值,也就是小数
complex() 创建一个复数,第一个参数为实部,第二个参数为虚部.或者第一个参数直接用字符串来描述复数

  进制转换:

bin()    将给的参数转换成二进制
otc()   将给的参数转换成八进制
hex()  将给的参数转换成十六进制

2.匿名函数

  lamda匿名函数

  为了解决一些简单的需求而设计的一句话函数

# 计算n的n次方
def func(n)
return n**n
print(func(10)) f = lambda n:n**n
print(f(10))

   lambda表示的是匿名函数,不需要用def来声明,一句话就可以声明出一个函数

语法:
函数名 = lanmbda 参数:返回值

  注意:

    1.函数的参数可以有多个.多个参数之间用逗号隔开

    2.匿名参数不管多复杂.只能写一行,且逻辑结束后直接返回数据

    3.返回值和正常的函数一样,可以是任意数据类型

  匿名函数并不是说一定没有名字.这里前面的变量就是一个函数名.说他是匿名原因是我们通过__name__查看的时候是没有名字的

  统一都叫lambda.在调用的时候没有什么特别之处,像正常的函数调用即可

sorted()

  排序函数. 

 语法:sorted(ITerable,key=None,reverse=False)

    Iterable:可迭代对象

    key:排序规则(排序函数),在sorted内部会将可第二代对象中的每一个元素传递给这个函数的参数.根据函数运算的结果进行排序
  
    reverse:是否倒序.True:倒叙,False:正序

 和函数组合使用

# 根据字符串⻓度进行排序
lst = ["麻花藤", "冈本次郎", "中央情报局", "狐仙"] # 计算字符串串⻓长度
def func(s):
return len(s) print(sorted(lst, key=func))

和lambda组合使用

# 根据字符串长度进行排序
lst = ["麻花藤", "冈本次郎", "中央情报局", "狐仙"]
# 计算字符串长度
def func(s):
return len(s) print(sorted(lst, key=lambda s: len(s))) lst = [{"id":1, "name":'alex', "age":18},
{"id":2, "name":'wusir', "age":16},
{"id":3, "name":'taibai', "age":17}] # 按照年年龄对学⽣生信息进⾏行行排序
print(sorted(lst, key=lambda e: e['age']))

filter()

筛选函数

语法:filter(function,Iterable)
function:用来筛选的函数.在filer中会自动的把iterable中的元素传递给function.然后根据function返回的True或者False来判断是否保留此项数据
Iterable:可迭代对象
lst = [1,2,3,4,5,6,7]
ll = filter(lambda x: x%2==0, lst) # 筛选所有的偶数
print(ll)
print(list(ll)) lst = [{"id":1, "name":'alex', "age":18},
{"id":2, "name":'wusir', "age":16},
{"id":3, "name":'taibai', "age":17}] fl = filter(lambda e: e['age'] > 16, lst) # 筛选年年龄⼤大于16的数据
print(list(fl))

map()

映射函数

语法:
map(function,iterable)可以对可迭代对象中的每一个元素进行映射.分别取执行function
计算列表中每个元素的平方,返回新列表 def func(e):
return e*e mp = map(func,[1,2,3,4,5])
print(mp)
print(list(mp)) 改写成lambda
print(list(map(lambda x: x*x,[1,2,3,4,5])))

计算两个列表中相同位置的数据的和

# 计算两个列表相同位置的数据的和
lst1 = [1, 2, 3, 4, 5]
lst2 = [2, 4, 6, 8, 10]
print(list(map(lambda x, y: x+y, lst1, lst2)))

python中的内置函数(一), lambda, filter, map的更多相关文章

  1. Python经常使用内置函数介绍【filter,map,reduce,apply,zip】

    Python是一门非常简洁,非常优雅的语言,其非常多内置函数结合起来使用,能够使用非常少的代码来实现非常多复杂的功能,假设相同的功能要让C/C++/Java来实现的话,可能会头大,事实上Python是 ...

  2. python中一些内置函数实例

    lambda表达式 简单函数可用lambda表达式 1. def f1() return(123) r1=f1() print() 2. f2=lambda:123 r2=f2() print() 以 ...

  3. python中的内置函数(2)

    一.lambda匿名函数定义:为了解决一些简单的需求而设计的一句话函数例子:计算n的n次方 def func(n):#正常的写法 return n**2 f=lambda n:n**2 这里的lamb ...

  4. python学习之【第十篇】:Python中的内置函数

    1.前言 内置函数,就是Python内部预先定义好的函数,可以直接使用,Python中内置函数有以下这么多个: 2.map() 描述: map() 会根据提供的函数对指定序列做映射.第一个参数 fun ...

  5. Python中max()内置函数使用(list)

    在学习完列表和元组的基础知识后,做到一个题: 求出列表中频次出现最多的元素. 学习到了python内置函数max的用法 其参数key的用法 匿名函数lamda的用法 python内置函数max() m ...

  6. python中常用内置函数和关键词

    Python 常用内置函数如下: Python 解释器内置了很多函数和类型,您可以在任何时候使用它们.以下按字母表顺序列出它们. 1. abs()函数 返回数字的绝对值. print( abs(-45 ...

  7. python中的内置函数,递归,递归文件显示(二),二分法

    1.部分内置函数 repr()显示出字符串的官方表示形式,返回一个对象的string形式 # repr 就是原封不动的输出, 引号和转义字符都不起作用 print(repr('大家好,\n \t我叫周 ...

  8. python中的内置函数(一)

    内置函数:内置函数就是python提供的,可以拿来直接用的函数 作用域相关 locals():返回当前作用域中的名字globals():返回全局作用域中的内容 def func(): print('我 ...

  9. 2018.8.14 python中的内置函数(68个)

    主要内容: python中68个内置函数的功能及使用方法

随机推荐

  1. python3操作MySQL数据库

    安装PyMySQL 下载地址:https://pypi.python.org/pypi/PyMySQL 1.把操作Mysql数据库封装成类,数据库和表先建好 import pymysql.cursor ...

  2. 10个免费的在线Markdown编辑器

    1. StackEdit StackEdit是一个很用特色的免费在线Markdown编辑器. 有一个非常不错的工具栏,可与云存储同步,以URL形式导入文件或者直接从硬盘打入.他还有一个亮点就是,可以减 ...

  3. Guide to installing 3rd party JARs

    Although rarely, but sometimes you will have 3rd party JARs that you need to put in your local repos ...

  4. centOs 安装NPM 记录

    1. 关闭npm严格认证 npm config set strict-ssl false

  5. (转 留存)Windows环境下的NodeJS+NPM+GIT+Bower安装配置步骤

    Windows环境下的NodeJS+NPM+GIT+Bower安装配置步骤 标签: NodeJSnpmbower 2015-07-17 16:38 3016人阅读 评论(0) 收藏 举报  分类: G ...

  6. dom4j读取XML文件内容

    <?xml version="1.0" encoding="UTF-8"?> <RESULT> <VALUE> <NO ...

  7. css常用属性总结:文本属性中的text-align

    前面提到text-indent属性,用来实现文本的缩进,今天的text-align使用率可比文本缩进高的多.拿自己现在做的项目上来说,水平居中和垂直居中估计是用到最多了,那我们就先看看它的语法吧! t ...

  8. sqlserver job 执行时间

    select instance_id,jh.run_date,jh.job_id,jh.step_name, case jh.run_status then 'failed' then 'Succee ...

  9. 使用net Manager工具配置远程连接oracle

    一,在服务端配置oracle端口在命令行中输入netca命令,打开相关配置默认端口号为1521 二,配置端口后使用Telnet工具调试端口是否联通 在命令行输入telnet 服务器ip 端口号 三,找 ...

  10. 如果应用程序正在通过 <identity impersonate="true"/> 模拟,则标识将为匿名用户(通常为 IUSR_MACHINENAME)或经过身份验证的请求用户。

    在配置文件中添加 <identity   impersonate= "true "   userName= "Administrator "   pass ...