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.方法

day 21 01 序列化模块和模块的导入的复习以及包的初识的更多相关文章

  1. day20:序列化模块,模块的导入

    1,什么是序列化--将原本的字典,列表等内容转换成一个字符串的过程就叫做序列化,字符串是有顺序的,序列化转向一个字符串的过程,我们平时说的序列,指的就是字符串. 2,为何要序列化?本来字符串是可以强转 ...

  2. python 常用模块(一): os模块,序列化模块(json模块 pickle模块 )

    1.os模块 2.序列化模块:(1)json模块 和 pickle模块 一.os模块 os.path.abspath: (1)把路径中不符合规范的/改成操作系统默认的格式 import os path ...

  3. python常用模块: random模块, time模块, sys模块, os模块, 序列化模块

    一. random模块  import random # 任意小数 print(random.random()) # 0到1的任意小数 print(random.uniform(-10, 10)) # ...

  4. day13 函数模块之序列化 random 模块 os模块 sys模块 hashlib模块 collections模块

    json import json dic = {'k1':'v1','k2':'v2','k3':'v3'} str_dic = json.dumps(dic) #序列化:将一个字典转换成一个字符串 ...

  5. python模块知识二 random -- 随机模块、序列化 、os模块、sys -- 系统模块

    4.random -- 随机模块 a-z:97 ~ 122 A-Z :65 ~ 90 import random #浮点数 print(random.random())#0~1,不可指定 print( ...

  6. 7.18 collection time random os sys 序列化 subprocess 等模块

    collection模块 namedtuple 具名元组(重要) 应用场景1 # 具名元组 # 想表示坐标点x为1 y为2 z为5的坐标 from collections import namedtu ...

  7. Python模块02/序列化/os模块/sys模块/haslib加密/collections

    Python模块02/序列化/os模块/sys模块/haslib加密/collections 内容大纲 1.序列化 2.os模块 3.sys模块 4.haslib加密 5.collections 1. ...

  8. python 序列化及其相关模块(json,pickle,shelve,xml)详解

    什么是序列化对象? 我们把对象(变量)从内存中编程可存储或传输的过程称之为序列化,在python中称为pickle,其他语言称之为serialization ,marshalling ,flatter ...

  9. Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式

    Python第十四天 序列化  pickle模块  cPickle模块  JSON模块  API的两种格式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Py ...

随机推荐

  1. 概述XML

    xml概述--->干什么的 存储一对多的数据 作为配置文件存储数据 xml组成---->怎么用 元素的分类 包含标签体的标签(有开始标签和结束标签) 例如: <student> ...

  2. 关于jquery.noConflict()的学习记录

    今天无意中看到了jquery.noConfict()的实现方法 代码如下: var // Map over jQuery in case of overwrite _jQuery = window.j ...

  3. C# 判断字体是否存在以及安装

        1. 字体安装 在实际开发项目中,需要在客户端安装字体,一种是通过代码将字体文件复制到系统FONT目录即可,另一种通过安装文件实现,至于其他方式还未知晓. 1.1 软安装 public cla ...

  4. leetcode357

    public class Solution { public int CountNumbersWithUniqueDigits(int n) { ) { ; } ; ; ; && av ...

  5. a.call(b); call 方法

    a.call(b); a.apply(b,[]) function class1() { this.name = function(){ alert("class1的方法name()&quo ...

  6. Linux 硬盘工具之hdparm

    安装 yum -y install hdparm 显示硬盘的相关设置 测试硬盘的读取速度 检测IDE硬盘的电源管理模式 [root@cnscn ~]# hdparm -C /dev/sda /dev/ ...

  7. hibernate事务配置Aop aop:advisor模式

    <!-- 使用HibernateTransactionManager管理hibernate事务 --> <bean id="txManager" class=&q ...

  8. 利用Surprise包进行电影推荐

    Surprise(Simple Python Recommendation System Engine)是一款推荐系统库,是scikit系列中的一个.简单易用,同时支持多种推荐算法(基础算法.协同过滤 ...

  9. ElasticSearch中如何让query should等同于filter should

    bool query must The clause (query) must appear in matching documents. should The clause (query) shou ...

  10. 删除链表之two star programming

    最近偶尔看到一篇关于Linus Torvalds的访问,大神说大部分人都不理解指针.假设被要求写一段链表删除节点的程序,大多数的做法都是跟踪两个指针,当前指针cur和其父节点pre,这种实现很容易理解 ...