• day 21 01 序列化模块和模块的导入的复习以及包的初识


    day 21 01 序列化和模块的导入的复习以及包的初识

     

     

    1.序列化模块

     

     什么是序列化模块:数据类型转化成字符串的过程就是序列卷

     为什么要使用序列化模块:为了方便存储和网络传输

     三种序列化模块:

     (1) json

           dumps:序列化方法

           loads:反序列化

           dump:和文件有关

           load:不能load多次

    (2)pickle

           方法和json一样,都有以上四种

           注意dump和load的时候,文件是rb或者wb打开

           支持python的所有数据类型

           序列化和反序列化需要相同的环境

    (3)shelve

           只提供了open方法

           open方法获取了一个文件句柄

           操作和字典类似,记得操作完了close文件

     

    2.模块的导入

           import

           from import

          as 重命名

          都支持多名字导入

          sys.moudles:记录了所有被导入的模块

          sys.path:记录了导入模块的时候寻找的所有路径

     

    3.包的初识

     包:把解决一类问题的模块放在同一个文件夹里面-----包

          同样导入的时候有import和from  import     

    import glance.api.policy  #galance包含api,api包含policy,都是py文件
    policy.get()
    
    from glance.api.import policy  #galance包含api,api包含policy
    policy.get()

    from glance.api.policy import get #直接到模块下面的方法了
    get()

          注意:凡是导入是带点的,点的左边必须是一个包模块,import后面不能带有点(from glance import policy.api是错误会报错

     

    使用包里面的方法 import

     

    import galance   # 不会执行policy.py文件
    glance.api.policy.get()
    #这时是会报错的,不能只导入glance,然后直接使用里面的变量和方法,因为只是导入了glance的文件夹并没有和里面的文件夹产生关系

        #如何解决呢?

    import glance
    ---执行init文件:在init文件里面再import api,import cmd,import db
    ---执行import的三个文件的init文件:再在他们的import policy,import versioncy

    此时就可以只通过importglance,然后后面直接点就使用glance里面的方法了:

    import glance
    glance.db.方法
    glance.cmd.方法

     

     

  • 相关阅读:
    118/119. Pascal's Triangle/II
    160. Intersection of Two Linked Lists
    168. Excel Sheet Column Title
    167. Two Sum II
    172. Factorial Trailing Zeroes
    169. Majority Element
    189. Rotate Array
    202. Happy Number
    204. Count Primes
    MVC之Model元数据
  • 原文地址:https://www.cnblogs.com/wxm422562/p/10798096.html
Copyright © 2020-2023  润新知