day13-包和文件操作
包
什么是包 包含"__init__.py"文件的文件夹就是包 包用来对py文件(模块)进行分类或者封装怎么使用包中的模块 1)import 包名.模块名 包名.模块名.变量 2)import 包名.模块名 as 新名 对’包名.模块名’进行重命名,命名通过’新名.变量’的方式使用变量 3)from 包名 import 模块名1, 模块名2, … 模块名.变量 4)from 包名定制包的__init__.py文件 不管用什么方式导入包或者包中的内容的时候,系统都会先去执行__init__.py文件
文件操作
数据持久化 1)计算机存储数据 程序中的数据默认情况下都是保存在运行内存中,保存在运行内存中的数据在程序结束后会自动销毁。 保存在磁盘中的数据,除非手动删除或者磁盘损坏,数据会一直存在。 2)持久化 将程序中的数据通过文件保存在磁盘中,这个过程就是数据持久化的过程。 持久化工具:普通文本文件(.txt)、数据库文件(.sqlite、.db)、json文件、plist文件、csv文件、excel文件等文件操作(操作文件内容) 操作文件的基本步骤:打开文件 -> 读/写操作 -> 关闭文件python实现文件操作 1)打开文件 open(file, mode, …, encoding=None, …) - 以指定的方式打开指定的文件并且返回(返回的是文件对象) file - 字符串,需要打开的文件路径 路径:绝对路径 - 文件在计算机中全路径 相对路径 - 用 . 来代替文件全路径的部分,只写部分路径 . - 表示当前目录(当前代码文件所在的目录) … - 表示当前目录的上层目录 … - 表示当前目录的上层目录的上层目录 mode - 字符串,打开方式(决定打开文件后文件能支持的操作;决定读写数据的类型) ‘r’ - 表示只读(默认) ‘w’ - 表示只写,打开的时候会先清空文件 ‘a’ - 表示只写,打开的时候会保留原文件内容 ‘t’ - 表示文本数据,对应str类型(默认) ‘b’ - 表示二进制数据,对应bytes类型 注意:1)以读的形式打开一个不存在的文件会报错; 以写的形式打开一个不存在的文件不会报错并且会自动创建 2)如果是文本文件打开的时候可以是’b’也可以是’t’; 如果是非文本文件打开的时候只能带’b’ encoding - 设置文本文件的编码方式,一般使用’utf-8’ 注意:1)创建文件和打开文件、读和写对应的编码方式要一致 2)打开的时候如果带’b’,就不能设置encoding
2)关闭文件 文件对象.close() 注意:文件关闭后不能再进行读写操作 3)读写操作 1)读 文件对象.read() - 从读写位置开始读到文件结尾 文件对象.seek(0) - 将读写位置移动到文件开头(读的方式打开读写位置默认在文件开头,写的方式打开读写位置默认在文件结尾)
数据持久化
怎么做到数据的持久化 1. 创建一个文件用来保存需要持久化的数据 2. 需要这个数据的时候从文件中去获取这个数据 3. 如果在程序中对这个数据进行了修改,需要将最新的数据更新到文件中