美文网首页Python
从这个 builtins.py(model)中我们能学到什么

从这个 builtins.py(model)中我们能学到什么

作者: 月蚀様 | 来源:发表于2018-06-06 15:26 被阅读193次

模块、包、库、框架的区别

  • 模块(module)
    • 一个 .py 文件就是个module
    • 写的代码保存为文件,这个文件就是一个模块。比如 practice.py 其中的文件名practice为模块的名字
  • 包(package)
    • 包是一个有层次的文件目录结构,它定义了由n个模块或n个子包组成的python应用程序执行环境
    • 包是一个一定含有 init.py 文件和其他模块或子包的目录
  • 库(lib)
    • 指python中能完成一定功能的代码集合(参考其他编程语言的说法)
  • 框架(framework)
    • 框架是一个基本概念的结构,用于去解决或处理复杂的问题
    • 比如:Django,flask等

Python中 *args 和 **kwargs 的区别

在浏览这个模块的时候,经常可以看见函数的形参为 args 或*kwargs,那么这一小节我们来总结一下这两者之前的区别

可变长度参数:*args 和 **kwargs

  • *args
    1. *args 用来将参数打包成tuple(元祖)给函数体调用
    2. 使用时让可变参数放在顺序参数的后面(详情查看Python参数的顺序)
  • **kwargs
    • **kwargs 打包关键字参数成dic(字典)给函数体调用
  • 调用arg,args,*kwargs参数的顺序
def func(arg, *args, **kwargs):
      print(arg, *args, **kwargs)
func(6, 7, 8, 9, 10, a=2, b=8, c=10)

输出结果:
6 (7, 8, 9, 10) {'a':2, 'b':8, 'c':10}

Functions 函数

1. abs()
Return the absolute value of the argument

2. all()
Return True if bool(x) is True for all values x in the iterable(可迭代对象). If the iterable is empty, return True

  • 什么是迭代(iteration)
    • 给定一个list(tuple/dict),通过for循环来遍历这个list(tuple/dict),这种遍历就是迭代
    • 可以用 collections模块 里面的 iterable包 的 isinstance 函数进行判断:
>>> from collections import Iterbale
>>> isinstance('abcde', Iterable)
True
>>> isinstance([1,2,3], Iterable)
True
>>> isinstance((1,2,3), Iterable)
True
>>> isinstance({'abcde':2}, Iterable)
True

3. any()
Return True if bool(x) is True for any x in the iterable. If the iterable is empty, return False

4. ascii(object)
Return an ASCII-only representation of an object.
As repr(), return a string containing a printable representation of an object, but escape the non-ASCII characters in the string returned by repr() using \x, \u or \U escapes. This generates a string similarto that returned by repr() in Python 2.

  • 返回一个(仅ASCII码)对象的表示
  • 在python2中和repr()函数相同,如果有非ASCII字符就会输出\x, \u或\U等字符来表示

5. bin(), oct(), hex()

  • bin() 返回一个二进制数:'0b...'
  • oct() 返回一个八进制数:'0o...'
  • hex() 返回一个十六进制数:'0x...'
  • 注意点:
    • 参数不仅仅可以是十进制数,还可以是二,八,十六进制,但注意一定要表示清楚 i.e. 'bin(0xd)'

相关文章

  • 从这个 builtins.py(model)中我们能学到什么

    模块、包、库、框架的区别 模块(module)一个 .py 文件就是个module写的代码保存为文件,这个文件就是...

  • 从历史中我们能学到什么?

    中国可以说是世界上最重视历史的国度,历朝历代都有历史记载的优良传统,数千年以来对历史的记录连绵不绝。从有确切纪年的...

  • 从放弃中能学到什么

    想想自己放弃的事就能罗列出两三个,比如:中级口译、吉他、游泳。这是一件件令人不自在的事,要是自己之前没接触过...

  • 从党史中能学到什么?

    今年是建党100周年,为什么要研究党史?党史记录着一群人或组织的发展轨迹,目标的曲折变化,过程中遇到的困难以及解决...

  • 从瑜伽中能学到什么

    断断续续练瑜伽也有好几年的时间,从最初的小白到现在算是颇有基础。瑜伽在我看来并不是你要会做多难的体式,而是要学会如...

  • 从“狄仁杰的尴尬”中我们能学到什么?

    图片发自简书App 发生了什么? 关于尴尬这个问题,我们在生活当中经常会遇到。就连古人也经常会出现尴尬的局面,比如...

  • 从地产开年预测中,我们能学到什么?

    ​ 有不少小伙伴知道邹叔会炒房(投资), 也是一家地产投资公司的顾问, 有不少人喜欢在微信上咨询我很多问题, 但大...

  • 从乐视危机中,我们能学到什么?

    01 最近一段时间,乐视几乎占据了每天IT新闻的头版头条。 从易到创始人周航在朋友圈公开指责乐视资金使用不公平开始...

  • 从 Slack IPO 我们能学到什么?

    这篇文章是对一家非常喜欢的公司——Slack 的整体复盘。非要总结的话,它是那种特立独行、一骑绝尘、与众不同、鹤立...

  • 从初恋中你能学到什么?

    吾,熊老三,熊龄27,遇见初恋,时长8月,6天前破灭(用心的熊当然以为天长地久,爱大过天) 咳,扯远了,3.8女王...

网友评论

    本文标题:从这个 builtins.py(model)中我们能学到什么

    本文链接:https://www.haomeiwen.com/subject/cuqysftx.html