特殊算数运算

  计算整数的和
 l = [1,2,3,4,5]
print(sum(l))
  
除法运算,然后取余
    在做页面的时候可以根据数据量分页的时候使用
 print(divmod(10,3))    # (3, 1)
  
四舍五入
 print(round(3.5))
  
计算绝对值
 print(abs(-1))


布尔运算判断
  
将序列的元素进行布尔运算
    0,none,空为假,其他为真
    一个为假就输出false
    特例:如果没有元素则返回true
 print(all([1,2,3,4,"yang",5,0]))   # False
print(all([])) # True
  
将序列的元素进行布尔运算,0,none,空为假,其他为真
    任意为真就输出true
 print(any([0,1]))  # True 
  
判断布尔值
    以下为fales,其他都是true
 print(bool(None))
print(bool(""))
print(bool(0))

进制转换
  
十进制转换成二进制
 print(bin(3))
  
十进制转换成八进制
 print(oct(3))
  
十进制转换成十六进制
 print(hex(12))


字符串转换

  
转换成字符串形式
    用处比较宽泛,比如数字转换字符串来拼接而不是相加之类的
    ps:被字符串化后的数据可以用eval提取出来其原来的结构
 dic = {'yangtuo':"tiancai"}
dic_str = str(dic)
print(dic_str) # {'yangtuo': 'tiancai'}
print(type(dic_str)) # <class 'str'>
  
将字符串中的数据结构提取出来
 dic = {'yangtuo':"tiancai"}
dic_str = str(dic)
di = eval(dic_str)
print(di["yangtuo"]) # tiancai   
    
如果是一组操作数可以直接计算出来
 d2 = "1*8*96"
print(eval(d2))  # 768

 

使用帮助方法
  
显示用法
 print(help(all))
 elp on built-in function all in module builtins:

 all(iterable, /)
Return True if bool(x) is True for all values x in the iterable. If the iterable is empty, return True. None
  
显示可以使用的方法名字
 print(dir(all))
 ['__call__', '__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__name__', '__ne__', '__new__', '__qualname__', '__reduce__', '__reduce_ex__', '__repr__', '__self__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__text_signature__']
  
查看全局变量
 name = "sssjsjk"
print(globals())
  
查看局部变量
 def test():
print(globals())
name = ""
print(locals())


其他方法
  

ACLSS表中的对应号码转换
 print(chr(97))     # a    # 编号对应的字符
print(ord("a")) # 97   # 字符对应的编号
  
哈希运算
    只有不可变数据类型才可以哈希,可变的无法哈希
    无法通过哈希值反推出源数据
    不管多长代码,得出的哈希值都是一定的长度
 print(hash("121343shdahkdsh"))
  
翻转,但是不改变源数据
 l = [1,2,3,4]
print(list(reversed(l))) # [4, 3, 2, 1]
print(l) # [1, 2, 3, 4]
  
定义切分方法,减少硬编码,增加可读性
 l = "hello"
print(l[3:5])
s1 = slice(3,5)
s2 = slice(1,4,2)
print(l[s1])
print(l[s2])
  
排序,本质就是比较大小,不同类型无法比较大小后排序
 l = [3,2,1,5,7]
l2 = [3,2,1,5,7,"a"]
print(sorted(l))
print(sorted(l2))  # TypeError: '<' not supported between instances of 'str' and 'int'
  
较为复杂的排序
    比较年领
 people=[
{'name':'alex','age':1000},
{'name':'wupei','age':10000},
{'name':'yuanhao','age':9000},
{'name':'linhaifeng','age':18},
]
print(sorted(people,key=lambda dic:dic["age"]))
    
比较价格 返回不同的值
 name_dic={
'abyuanhao': 11900,
'alex':1200,
'wupei':300,
}
print(sorted(name_dic)) # 按照key去比较。返回key
print(sorted(name_dic,key=lambda key:name_dic[key])) # 按照values比较。返回的是key
print(sorted(zip(name_dic.values(),name_dic.keys()))) # 按照先比较values比较,然后返回全部的键值对
其他sorted详细使用见此链接
http://www.runoob.com/python/python-func-sorted.html



比较年领

day11 内置函数的更多相关文章

  1. Python开发基础-Day11内置函数补充、匿名函数、递归函数

    内置函数补充 python divmod()函数:把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b) 语法: divmod(a, b) #a.b为数字,a为除数,b ...

  2. day11 - 15(装饰器、生成器、迭代器、内置函数、推导式)

    day11:装饰器(装饰器形成.装饰器作用.@语法糖.原则.固定模式) 装饰器形成:最简单的.有返回值的.有一个参数的.万能参数 函数起的作用:装饰器用于在已经完成的函数前后增加功能 语法糖:使代码变 ...

  3. python学习day11 函数Ⅲ (内置函数与lambda表达式)

    函数Ⅲ(内置函数&lambda表达式) 1.函数小高级 函数可以当做变量来使用: def func(): print(123) func_list = [func, func, func] # ...

  4. day23 内置函数,匿名函数,递归

    Python之路,Day11 = Python基础11 内置函数divmod(x, y)   # (商, 模)enumerate(可迭代对象)     # (序号,值)eval(字符串) # 把字符串 ...

  5. Entity Framework 6 Recipes 2nd Edition(11-12)译 -> 定义内置函数

    11-12. 定义内置函数 问题 想要定义一个在eSQL 和LINQ 查询里使用的内置函数. 解决方案 我们要在数据库中使用IsNull 函数,但是EF没有为eSQL 或LINQ发布这个函数. 假设我 ...

  6. Oracle内置函数:时间函数,转换函数,字符串函数,数值函数,替换函数

    dual单行单列的隐藏表,看不见 但是可以用,经常用来调内置函数.不用新建表 时间函数 sysdate 系统当前时间 add_months 作用:对日期的月份进行加减 写法:add_months(日期 ...

  7. python内置函数

    python内置函数 官方文档:点击 在这里我只列举一些常见的内置函数用法 1.abs()[求数字的绝对值] >>> abs(-13) 13 2.all() 判断所有集合元素都为真的 ...

  8. DAY5 python内置函数+验证码实例

    内置函数 用验证码作为实例 字符串和字节的转换 字符串到字节 字节到字符串

  9. python之常用内置函数

    python内置函数,可以通过python的帮助文档 Build-in Functions,在终端交互下可以通过命令查看 >>> dir("__builtins__&quo ...

随机推荐

  1. eclipse中文字体大小修改

    貌似有不少人苦恼eclipse中文字体大小修改问题,默认的eclipse中文字体很小,和英文字体大小完全不在一个调子上,因为默认的eclipse juno中英文字体是Consolas,字体大小是10, ...

  2. Luogu3877 TJOI2010 打扫房间 二分图、网络流

    传送门 真是菜死了模板题都不会-- 首先\(30 \times 30\)并不能插头DP,但是范围仍然很小所以考虑网络流. 注意每个点都要包含在一个回路中,那么每一个点的度数都必须为\(2\),也就是说 ...

  3. Ionic app 通知在Moto 360 Watch上显示通知(2)

    在前一篇文章中,我们已经将Wtach的环境测试成功,下面进入我们自己消息的接收. 1.安装JPush插件在我们的App中,这个具体步骤可以参考 Ionic 安装JPush过程 2.在App上的登录模块 ...

  4. EZ 2018 05 26 NOIP2018 模拟赛(十六)

    这次难道就是传说中的标准分大赛?而且这次比赛的链接不翼而飞了 一堆人153pts然后就有Rank4?看来这个Rank4不值钱了,才涨了50+的Rating. 不过还好最后5min的时候想出了T1正解, ...

  5. 【已解决】HeidiSQL连接(登录)MySQL数据库报错10061问题

    解决方法: 打开cmd->输入命令services.msc 然后打开即可解决.

  6. 虚拟机console基础环境配置——系统镜像站点配置

    1. 概述2. 部署HTTP服务器2.1 YUM安装httpd2.2 配置httpd2.3 启动httpdf2.4 测试httpd3. 部署FTP服务器3.1 YUM安装vsftpd3.2 配置vsf ...

  7. 【nodejs】让nodejs像后端mvc框架(asp.net mvc)一样处理请求--目录(8/8 完结)

    为什么要做这个 在使用nodejs开发过程中,总是发现需要做很多重复性的体力劳动,且因为自身是服务端程序员出身,感觉有一些服务端好的东西其实可以在nodejs上得到应用并能提高一些开发工作效率. 本系 ...

  8. NB-IOT_BC95_B5常用AT指令集

    .AT+<cmd>=? 测试命令,用于向模块询问支持的设置项目. .AT+<cmd>? 读取命令,用于让模块上报某个命令代表的设置项当前的值. .AT+<cmd>= ...

  9. Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)

    Redis的集群方案大致有三种:1)redis cluster集群方案:2)master/slave主从方案:3)哨兵模式来进行主从替换以及故障恢复. 一.sentinel哨兵模式介绍Sentinel ...

  10. Linux内核分析作业六

    1.阅读理解task_struct数据结构 2.分析fork函数对应的内核处理过程sys_clone,理解创建一个新进程如何创建和修改task_struct数据结构: fork进程的代码 #inclu ...