设为首页 收藏本站
查看: 1495|回复: 0

[经验分享] Python19 内置函数

[复制链接]

尚未签到

发表于 2018-8-8 12:12:43 | 显示全部楼层 |阅读模式
python19 内置函数


  •   all函数
      

    print (all([0,-5,3]))  
    #非0就为真
      

    DSC0000.png

      

    print (all([1,-5,3]))  


DSC0001.png



  •   any函数
      

    print (any([0,-5,3]))  

      
    #只要非空,就为真
      

      
    a = ascii([1,2,'一二三'])
      
    print (type(a),[a])
      

    DSC0002.png


  可以看到两边用双引号被括起来了,这个函数的作用就是让其内存中的数据变成可打印的字符串格式。
  这个函数实际用处不大。


  •   bin函数
    DSC0003.png

      将十进制数字转为二进制数字

  •   bool
    DSC0004.png

      判断真假

  •   bytearray函数
      

    a = bytearray('abcde',encoding='utf-8')  
    print (a)
      

    DSC0005.png

      默认字符串是不可修改的,不过这里可以通过字节个事的ASCII码来修改。
      

    print (a[0])  
    print (a[1])
      


DSC0006.png

  103对应的g
  这个bytearray功能很少用。


  •   bytes函数
      

    a = bytes('abcde',encoding='utf-8')  
    print (a.capitalize(),a)
      

    DSC0007.png

      变为字节格式

  •   callable函数
      

    print (callable([]))        #判断列表是否可调用  

      
    def abc ():
      
    pass
      
    print (callable(abc))    #判断函数是否可调用
      


DSC0008.png

  判断是否是可调用的(只有带小括号的才可以被调用)


  •   chr函数
    DSC0009.png

      返回ASCII码对应表内容

  •   ord函数
    DSC00010.png

      ord和chr是反过来的,通过字符查看对应的ASCII表数字

  •   compile、exec、eval函数
      

    compile用来将字符串转为可执行的代码  

      
    code = 'for i in range(10):print(i)'
      
    print (compile(code,'','exec'))
      

    DSC00011.png

      打印内存中字节码对象
      

    exec(code)  


DSC00012.png

  

    code = 'print (10)'  eval(code)
  

DSC00013.png

  如果使用eval的话,可以直接将其转换并执行,不需要像compile先编译
  这个好处是可以调取txt文档中的字符串来执行,类似import 导入模块,但是import 只能在本地导入,但是该函数可以从远程调取字符串来执行。
  

    code = 'print (10)'  exec (code)
  


  其实直接使用exec就可以执行字符的代码了
  eval:可以执行非语句的字符串
  exec可以执行带语句的字符串比如for循环


  •   divmod函数
    DSC00014.png

      divmod用来取除法的商和余数

  • filter函数  (lambda n:print (n)) (10)     #lambda是匿名函数

  匿名函数用来处理简单的条件或运算等简单的功能,一般匿名函数很少单独使用。
  

    calc = lambda n:3 if n<4 else n  print (calc(5))
  

DSC00015.png

  lambda配合filter来使用:
  

    res = filter(lambda n:n>5,range(10))  #过滤大于n的数(n根据range(10)生成0到9的数字)
  print (res)
  print (dir(res))
  

DSC00016.png

  可以看到当前res是迭代器,所以需要通过for来循环
  

    for i in res:  print (i)
  

DSC00017.png

  

    res = map(lambda  n:n*2,range(10))  for i in res:
  print (i)
  

DSC00018.png

  map对传入的值进行处理,处理的方式就是匿名函数中的n*2,然后进行print
  上面的代码,与下面的推到式列表结果一样
  

    res = [i*2 for i in range(10)]  for i in res:
  print (i)
  

DSC00019.png

  如果没有map的话print的就是迭代器
  

    import functools  res = functools.reduce(lambda x,y:x+y,range(10))
  

  #reduce在2.X中属于内置函数,不过在3.X中就是标准库函数了,需要import
  print (res)
  

DSC00020.png

  将运算的最后结果打印出来。


  • frozenset函数
    DSC00021.png

      可变集合可以看到remove、update等方法,可以用来改变集合

DSC00022.png

  不可变集合中就看不到可以改变该集合的方法


  •   globals函数
      

    a = 1  
    b = 2
      
    c = 3
      

      
    print (globals())
      


DSC00023.png

  globals可以将当前文档所有内容进行判断,但凡是变量格式(a = 1),都会讲这个=符号变为:,以字典的格式打印。
  可以用来判断当前文档中是否有该变量(只是在全局作用域判断)


  •   locals函数
      

    def test ():  abc = 123
      print (locals())    #判断局部作用域是否有变量,并以字典的格式打印出来
      

      
    test()
      


  •   hex函数
    DSC00024.png

      将十进制转为十六进制

  •   max、min函数
      

    a = [1,5,3,2,6]  
    print (max(a))
      
    print (min(a))
      


DSC00025.png



  •   oct函数
    DSC00026.png

      将十进制转为八进制

  •   pow函数
    DSC00027.png

      求的是2的4次方

  •   repr函数
    DSC00028.png

      repr可以用字符串来表示指定的数据

  •   round函数
      

    print ("round(70.23456) : ", round(70.23456))  
    print ("round(56.659,1) : ", round(56.659,1))
      
    print ("round(80.264, 2) : ", round(80.264, 2))
      
    print ("round(100.000056, 3) : ", round(100.000056, 3))
      
    print ("round(-100.000056, 3) : ", round(-100.000056, 3))
      

    DSC00029.png

      返回浮点数x的四舍五入值。
      

    a = {6:2,8:0,1:4,-5:6,99:11,4:22}  
    print (a)
      
    b = sorted(a.items())   #sorted只对key排序,加上.items()就会对整个字典排序,以列表打印出来
      
    print (b)
      


DSC00030.png

  

    c = sorted(a.items(),key=lambda x:x[1])    #根据value的值进行排序  print (c)
  

DSC00031.png



  •   sum函数
    DSC00032.png

      

    sum((2, 3, 4), 1)    # 元组计算总和后再加 1  

      
    sum([0,1,2,3,4], 2)    # 列表计算总和后再加 2
      


  •   zip函数
      

    a = [1,2,3]  
    b = [4,5,6]
      
    c = [7,8,9,10,11]
      

      
    zipped = zip(a,b)     # 打包为元组的列表
      
    for i in zipped:
      print (i)
      

    DSC00033.png

      结果是两个列表一 一对应,以元组的形式显示
      

    for m in zip(a,c):  print (m)
      

    DSC00034.png

      元素个数与最短的列表一致
      

    d = zip(*zipped)  
    for x in d:
      print (x)
      


DSC00035.png

  与 zip 相反,可理解为解压,返回二维矩阵式


  •   import函数
      

    __import__('time')    #可以通过该函数import字符串来去import某个模块  

      
    a = 'time'
      
    __import__(a)
      



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-548655-1-1.html 上篇帖子: 【python】博客是必须写的-3 面向对象 下篇帖子: python中socket与socketserver模块简单入门使用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表