python的入门--函数模块的导入及IO操作、pickle模块序列化与反序列化

|–函数的优点是可以将代码块与主程序分离。通过给函数指定描述性名称,可让主程序容易理解的多。还可以更进一步,将函数存储在被称为模块的的独立文件中,再将模块导入到主程序中。import语句允许在当前运行的程序文件中使用模块中的代码。
1.导入模块,首先创建模块。模块是扩展名为.py结尾的一个或多个文件的集合.
pizza.py
making_pizzas.py
2.导入模块中特定函数
|–from module name import function name
|–from module name import function_0,function_1,function_2
from pizza import make pizza

&&若使用这种语法,调用函数就无需使用句点。显式导入函数make_pizza(),因此调用它无需指定其名称。
3.使用as给函数制定别名
如果要导入函数的名称可能与程序中现有的名称冲突,或者函数的名称太长,可指定简短二独一无二的别名,导入时使用。
4.使用as 给模块制定别名(import module_name as mn)
import pizza as p
5.导入模块中的所有函数
使用()号运算符可让python导入模块中的所有函数:(from module_name import)
**

*6.python的IO操作 open全局函数
IO–输入输出流持久化设备(ROM)断电的情况下保存数据
完整的一个IO操作:打开文件–读取数据(输入流)–数据运算–数据的持久化(输出流)–关闭资源(若不关闭,会占用内存资源,而且文件占用不能删除)
输入输出流是站在内存的角度来看!
以操作数据的类型来分:
|–字符流(文本文档、字符串)
|–字节流(字节数据)
根据流的方向:
|–输入流 open mode=‘r’
|–输出流 open mode=‘w’
open 函数mode参数的分类:
‘r’: 打开文件 默认读取操作 输入流
‘w’: 打开文件写入操作 若文件已存在 原有内容会删除 从头重新编辑 若操作文件不存在 会新建 输出流
‘x’: 创建一个新文件 并进行写入操作 若文件已存在则会报错 输出流
‘a’: 打开文件 写操作 可在文档末尾继续追加字符串 不会覆盖已存在文档内容 输出流
‘b’: 二进制模式 输入输出都可
‘t’: 文本模式(默认)
‘+’: 打开一个文件进行更新(可读可写)
‘u’: 通用换行符(一般不推荐)
open(“文件路径”,“mode") 需要调用close(),关闭文件资源
with open(“文件路径”,“mode") as f: 默认结尾自调用close()
7.对象的序列化和反序列化
对象概念是一个逻辑单位
比如一个列表b变量可修改,改变其中一个元素,但是一旦程序结束,变量所占用的内存就被操作系统全部回收。如果没有把修改的数据存储到磁盘中,下次运行程序,变量有初始化为原值。
序列化:把变量从内存中变成可存储或传输的过程
反序列化:把变量内容从序列化的对象重新读到内存里的过程
import pickle 支持列表、集合、字典、类等
|–dumps
对象序列化为字节数据= pickle.dumps(object) ,对象序列化后以字节返回,不写入文件。

*

|–loads
对象=pikle.loads( 对象序列化为字节数据 ) ,从字节对象暗中读取一个反序列化对象,并返回其重组后的对象
在这里插入图片描述
|-dump(obj,file) 序列化对象,并将结果数据流写入到文件对象中 序列化后会在当前目录下生成一个f1文件
在这里插入图片描述
|–load 反序列化对象,将文件中的数据解析为一个python对象

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值