zoukankan      html  css  js  c++  java
  • 包与常用模块

    1. 什么是包?

    包就是包含__init__.py的文件夹。包是一种可以通过使用“包名 .模块名”来组织python模块名称空间的方式。

    1. 包的作用?

       创建包的作用就是用文件夹将文件/模块组织起来。

    1. Import 包(导入包)的本质就是在导入__init__.py文件。导入模块会做三件事,那导入包也会做相同的三件事。

       A与包B下有同名模块也不冲突。如A.aB.a来自两个命名空间。

    1. 包的使用之import

        Import 包,单独导入包名称实质是将包中的__init__文件导入,不会将包中所有的子模块导入。所以访问不到其他子模块中的名字。

    1. from...import  必须明确的一点import后不能带点,否则会有语法错误。
    2. 绝对导入与相对导入:
      1. 绝对导入:以执行文件的sys.path为起点开始导入。

                  执行文件与被导入的模块中(被导入的包中)都可以使用。

    1. 相对导入:参展当前所在文件的文件夹为起点开始查找。

        符号.代表当前所在文件的文件夹,..代表上一级文件夹,...代表上一级的上一级文件。。。。。

         优点:导入更加简单        

    缺点:只能导入包中的模块时才能使用。即相对导入只能用于包内部模块之间的相互导入,导入者与被导入者都必须存在于包内。

       注意:在执行文件导入包的过程中,包内模块之间涉及到相互导入时,一定要以起点执行文件所在环境变量为起点,否则出错。

    常用模块:

    1. timedatatime模块:

    A.timestamp(时间戳)

    B.time.time()19701100:00:00按秒计算到当前的时间差,结果为浮点型。

            C.time.localtime()

    D.time.strftime(“%Y-%m-%d  %X”)  格式化的时间

    时间格式之间的相互转换

    1. random模块:
    1. json pickle模块:

    序列化就是将内存中的数据类型转化成为另一种格式

    反序列化:硬盘—》其他格式—》字典

    为什么要序列化:持久保存程序的运行状态,数据的跨平台交互

  • 相关阅读:
    Dart语言概览
    Flutter开发环境配置(MAC版)
    Jetpack系列:Paging组件帮你解决分页加载实现的痛苦
    Jetpack系列:应用内导航的正确使用方法
    Jetpack系列:LiveData入门级使用方法
    在Android平台使用SNPE应链接libc++库
    Android binder流程简图
    使用Visual Studio Code进行远程开发
    用clock()函数计时的坑
    OpenCV Mat格式存储YUV图像
  • 原文地址:https://www.cnblogs.com/yu-931017/p/10072769.html
Copyright © 2011-2022 走看看