zoukankan      html  css  js  c++  java
  • python模块自学

    随python附带安装的有python标准库,标准库中有很多模块,一般常见的任务都可以由指定的模块来直接实现,python标准库包含的模块有上百个之多,如__builtin__模块(这个模块包含 Python 中使用的内建函数,一般不用手动导入这个模块,Python会帮你做好一切)、os模块、re模块、math模块、sys模块、copy模块、time模块、threading模块、urllib模块等等,还有一些其他线程和进程、网络协议等等各种模块,这里来说一下独立的探索这些模块的方法。

    python除了标准库的几百个官方模块之外,还有一个叫pypi的社区:https://pypi.python.org/pypi,收集了全球python爱好者贡献出来的模块,自己也可以写一个模块发布到pypi社区分享到全世界。

    PEP是python enhancement proposals的缩写,翻译过来就是Python增强建议书的意思。它是用来规范与定义python的各种加强与延申功能的技术规格,好让python开发社区能有共同遵循的依据。

    每个PEP都有一个唯一的编号,这个编号一旦给定了就不会再改变。例如,PEP3000就是用来定义python3..0的相关技术规格;而PEP333则是python的web应用程序界面WSGI(web server gateway interface1.0)规范。关于PEP本身的相关规范是定义在PEP1,而PEP8则定义了python代码的风格指南。有关python的列表大家可以参考PEP0:https://www.python.org/dev/peps/。

    入手不熟悉的模块:

    可以查看官方文档,搜索模块名,查看模块的功能介绍、简单的使用方法、这个模块里边包含了哪些类、函数、变量、实际应用的详细的例子。

    利用代码查看模块timeit:

    import timeit

    #查看模块的简介

    print(timeit.__doc__)

    #这个模块中定义了哪些变量、类、方法

    dir(timeit)

    #上边显示出来的名字,不是所有的对我们都有用,所以要过滤掉一些我们不需要的东西,__all__属性就是帮助我们过滤掉无用的东西的一个属性。

    timeit.__all__ #返回这个模块可以供外界调用的所有东西

    #但是不是所有的模块都有__all__这个属性,__all__这个属性里边包含的内容是这个模块的作者希望外部调用的这些函数、类。

    #如果一个模块设置了__all__属性,使用from timeit import *导入到命名空间,只有__all__属性这里边的名字才会被导入。建议在编写模块的时候,对外提供接口和类都设置到__all__属性这个列表里边去,这是比较规范的做法。

    from timeit import *

    #__file__属性指明了模块的源代码所在的位置

    print(timeit.__file__)

    #help()显示的帮助文档,可以快速知道各个函数的用法,它比__doc__属性详细一点,比官方文档简单一点。

    help(timeit)

  • 相关阅读:
    skynet源码分析之socketchannel
    skynet源码分析之master/salve集群模式
    skynet源码分析之网络层——网关服务器
    Android反编译基础(apktoos)--广工图书馆APK
    Android-Native-Server 启动和注册详细分析
    Android NDK r8 windows环境搭建
    Android 4.1.1源码编译
    Android Binder------ServiceManager启动分析
    更改系统盘符后DFS无法复制故障处理
    Centos6.9部署Gitlab-11.9.8并汉化
  • 原文地址:https://www.cnblogs.com/wisir/p/12445928.html
Copyright © 2011-2022 走看看