Day6_内置函数
定义完一个有名函数,可以直接利用函数名+括号来执行,例如:func()
有名函数:
def func(x,y,z=1):
return x+y+z
匿名函数:
lambda x,y,z=1:x+y+z
#与有参函数相比:
#1,函数体没有名字 2,函数体自带return,不用加return
#只利用一次就不用的,临时使用的
一些内置函数的意思:内置函数又被称为工厂函数
abs():取绝对值
#布尔值为假的情况:None,空,0,False
all():传可迭代对象,判断是不是所有的值布尔值是不是为真。
any() :传可迭代对象,只要有布尔值为真就为真。
bin():2进制
oct():8进制
hex():16进制
bytes:
unicode---encode----bytes
print('hello'.encode('utf-8'))=print(bytes('hello',encode='utf-8'))
callable():是否能够被调用的
chr():根据ASCI表的位置输出值
ord():根据ASCI表的值来输出位置
int():整型
complex():复数
float():浮点型
str():字符串
list():列表
tuple():
dict():字典
frozenst():不可变集合
divmod(): 将商和余数放到一起,例子:divmod(10,3) 结果为:(3,1)
globals,locals:查看全局作用域和局部作用域
hash():校验一段字符串,得到一堆数字,只要是内容一样,得到的结果是一样的。
help():查看函数里边的注释信息
id():访问id的一串ID号,只是python解释器实现的功能,反应了变量在内存的位置。
isinstance():
x=1
print(isinstance(x,int))
#判断x是不是int的实例
max:求最大值
min:最小值
repr:把对象转换成字符串。
reversed:将列表内的内容反转。
round:将数字变为多少位小数,利用四舍五入。eg:print(3.478,2)
l=[1,2,3,4,5,6]
print(l[0:4])#取得是下标0-4的值
print([0:4:2])#去下标是0-4的值,而且隔2个取一个 #slice:指定一种想要数据的方法,跟上面一样。
s=slice(0,4,2)
print(l[s])
zip:拉链
s='hello'
l=[1,2,3,4,5]
res=zip(s,l)
print(list(res)) #结果是[('h,'1)........]
内置函数与匿名函数结合使用:
求字典中工资最高的那个人名:
salaries={
'egon':3000,
'alex':110000,
'wupeiqi':1000,
'yunahao':2000
}
#将字典的key和值反转
#print(zip(salaries.values(),salaries.key()))
print(max(zip(salaries.values(),salaries.key())))
#或者这样写
#max(salarie,key=lambda name:salaries[name])
def get_value(name)
return salaries[name]
print(sorted(salaries,key=get_value))#这样得到的人名是从大到小排列的
print(sorted(salaries,key=get_value,reverse=True))#这样是将人名从大到小的值反转,也就是从小到大
map:把一堆值映射成一堆新值。
例如:将不是yangshuai的值加上一个丑的后缀。
name=['yangshuai','datuo','chenhao','dafei']
#map(lambda x:x+'_SB',name)#这个是一段内存地址
res=map(lambda x:x+'_SB',name)
print(list(res))
#也可以指定哪个值不加
res=map(lambda x:x if x == 'yangshuai' else x:x+'_SB',name)
print(list(res))
算下从1-100的和:
from functools import reduce
print(reduce(lambda x,y:x+y,range(101)))
#如果数列有初始值,可以在后边加上
print(reduce(lambda x,y:x+y,range(101),100))
将某些数据过滤出来:
name=['yangshuai', 'datuo_SB', 'chenhao_SB', 'dafei_SB']
res=filter(lambda name:name.endswith('SB'),name)
print(list(res))
eval:将文本命令执行一遍。
cmd='print(x)'
x=1
eval(cmd,{'x':0},{'x':1000})
#当全局不存在全局变量时候会报错,可以指定一个全局变量和局部变量。
#第一个值是全局变量,第二个是局部变量,当局部变量生效的时候,全局变量不会生效
Day6_内置函数的更多相关文章
- Entity Framework 6 Recipes 2nd Edition(11-12)译 -> 定义内置函数
11-12. 定义内置函数 问题 想要定义一个在eSQL 和LINQ 查询里使用的内置函数. 解决方案 我们要在数据库中使用IsNull 函数,但是EF没有为eSQL 或LINQ发布这个函数. 假设我 ...
- Oracle内置函数:时间函数,转换函数,字符串函数,数值函数,替换函数
dual单行单列的隐藏表,看不见 但是可以用,经常用来调内置函数.不用新建表 时间函数 sysdate 系统当前时间 add_months 作用:对日期的月份进行加减 写法:add_months(日期 ...
- python内置函数
python内置函数 官方文档:点击 在这里我只列举一些常见的内置函数用法 1.abs()[求数字的绝对值] >>> abs(-13) 13 2.all() 判断所有集合元素都为真的 ...
- DAY5 python内置函数+验证码实例
内置函数 用验证码作为实例 字符串和字节的转换 字符串到字节 字节到字符串
- python之常用内置函数
python内置函数,可以通过python的帮助文档 Build-in Functions,在终端交互下可以通过命令查看 >>> dir("__builtins__&quo ...
- freemarker内置函数和用法
原文链接:http://www.iteye.com/topic/908500 在我们应用Freemarker 过程中,经常会操作例如字符串,数字,集合等,却不清楚Freemrker 有没有类似于Jav ...
- set、def、lambda、内置函数、文件操作
set : 无序,不重复,可以嵌套 .add (添加元素) .update(接收可迭代对象)---等于批量 添加 .diffrents()两个集合不同差 .sysmmetric difference( ...
- SQL Server 内置函数、临时对象、流程控制
SQL Server 内置函数 日期时间函数 --返回当前系统日期时间 select getdate() as [datetime],sysdatetime() as [datetime2] getd ...
- Python-Day3知识点——深浅拷贝、函数基本定义、内置函数
一.深浅拷贝 import copy #浅拷贝 n1={'k1':'wu','k2':123,'k3':['carl',852]} n2=n1 n3=copy.copy(n1) print(id(n1 ...
随机推荐
- Uva - 1589 - Xiangqi
Xiangqi is one of the most popular two-player board games in China. The game represents a battle bet ...
- 【原创】Eclipse vs. IDEA快捷键对比大全
花了一天时间熟悉IDEA的各种操作,将各种快捷键都试了一下,感觉很是不错!于是就整理了一下我经常用的一些Eclipse快捷键与IDEA的对比,方便像我一样使用Eclipse多年但想尝试些改变的同学们. ...
- UNIX环境高级编程——死锁
操作系统中有若干进程并发执行,它们不断申请.使用.释放系统资源,虽然系统的进程协调.通信机制会对它们进行控制,但也可能出现若干进程都相互等待对方释放资源才能继续运行,否则就阻塞的情况.此时,若不借助外 ...
- UNIX环境高级编程——select和epoll的区别
select和epoll都用于监听套接口描述字上是否有事件发生,实现I/O复用 select(轮询) #include <sys/select.h> #include <sys/ti ...
- 2015年CSDN博客排名第一名,何方神圣?
2015年CSDN博客排名第一名,何方神圣? 一.引子: 话说博主phphot,雄霸天下好多年. 俱往矣, 落花流水春去也. 斗转星移,江山易主. 详细可以参见下文: CSDN博客排名第一名,何许人也 ...
- leetcode之 Palindrome Partitioning I&II
1 Palindrome Partitioning 问题来源:Palindrome Partitioning 该问题简单来说就是给定一个字符串,将字符串分成多个部分,满足每一部分都是回文串,请输出所有 ...
- Linux Debugging(一): 使用反汇编理解C++程序函数调用栈
拿到CoreDump后,如果看到的地址都是????,那么基本上可以确定,程序的栈被破坏掉了.GDB也是使用函数的调用栈去还原"事故现场"的.因此理解函数调用栈,是使用GDB进行现场 ...
- javascript之数组对象与数组常用方法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- (NO.00002)iOS游戏精灵战争雏形(十)
到目前为止,子弹是有去无回.如果子弹击中目标或者飞出屏幕,那么子弹也就没必要存在了. 这里的不存在不是把它从屏幕中删除,因为前面提到了子弹缓存的作用,所以这里仅仅将其设置为不可见就可以了. 首先处理飞 ...
- 优雅的App完全退出方案(没有任何内存泄漏隐患)
在Android开发过程中,特别是界面比较多的情况下,用平常的退出方式往往是不能完全退出这个应用,网络上也好多各种退出方案.其中一种应该是被广大开发者采纳使用,也非常的清晰方便,就是在Applicat ...