网站建设项目申请ppt免费二级域名查询网站
1. 概念
-
计算机内存通常分为两种类型:主存储器和辅助存储器。
主存储器是计算机中最重要的存储器类型之一。它是计算机中用于存储正在运行的程序和数据的存储器。主存储器通常是易失性的,这意味着当计算机关闭时,其中存储的数据将被删除。主存储器通常是随机访问存储器(RAM)的形式,这意味着计算机可以随时访问存储器中的任何位置。辅助存储器是计算机中的另一种存储器类型。它通常是非易失性的,这意味着即使计算机关闭,其中存储的数据也不会丢失。辅助存储器通常用于存储大量的数据和程序,例如操作系统,应用程序和文件。常见的辅助存储器设备包括硬盘驱动器,固态硬盘,光盘和USB闪存驱动器。
-
数据持久化
数据持久化是指将数据保存在磁盘或其他非易失性存储介质中,以便在计算机关闭或程序终止时仍然可以访问该数据。这与将数据保存在内存中不同,因为内存通常是易失性的,这意味着当计算机关闭或程序终止时,其中存储的数据将被删除。
在编程中,数据持久化通常是通过将数据写入文件或数据库来实现的。文件是一种简单的数据持久化方法,可以将数据保存在文本文件或二进制文件中。数据库是一种更复杂的数据持久化方法,可以将数据保存在结构化的表中,并提供高级查询和数据管理功能。
在Python中,您可以使用内置的pickle模块将Python对象序列化为字节流,并将其写入文件以进行持久化。您还可以使用第三方库,例如SQLAlchemy和Django ORM,将Python对象映射到关系数据库中。
- 常见的数据持久化:数据库,Excel文件,csv文件,txt文件 ,json文件,plist文件
2. 文件操作
文件操作需要以下几步:
- 打开文件
- 读取或写入文件
- 关闭文件
在Python中,可以使用open()
函数打开文件,使用read()
或write()
方法读取或写入文件,使用close()
方法关闭文件。
以下是一个简单的例子:
with open('path/to/file', 'r') as f:content = f.read()# do something with content
'''
在这个例子中,我们使用with语句打开文件,这样可以确保文件在使用完毕后被正确关闭。open()函数的第一个参数是文件路径,第二个参数是打开文件的模式,'r'表示读取模式,'w'表示写入模式,'a'表示追加模式。
'''
-
open(路径,文件打开方式,encoding=文本文件编码方式)
# 找不到会报错 open(/Users/shangjianweidemacbook/Desktop/)
-
绝对路径和相对路径
相对路径中的
.
表示当前目录,..
表示上一级目录。例如,假设当前工作目录是
/home/user
,那./file.txt
表示/home/user/file.txt
,../file.txt
表示/home/file.txt
。
# 绝对路径 open(/Users/shangjianweidemacbook/Desktop/) # 相对路径 open(../Desktop/)
-
打开方式
-
r
只读模式,打开文件后只能读取文件内容,不能修改文件内容。 -
w
写入模式,打开文件后可以写入文件内容,如果文件不存在则创建文件,如果文件已存在则清空文件内容。 -
a
追加模式,打开文件后可以在文件末尾追加内容,如果文件不存在则创建文件。 -
x
独占模式,打开文件时如果文件已存在则抛出异常,如果文件不存在则创建文件。 -
b
二进制模式,打开文件时以二进制模式读取或写入文件内容。 -
t
字符串模式,独到的数据和写入文件的数据必须是字符串(如果不赋值默认为t)
# 以只读模式打开文件 with open('path/to/file.txt', 'r') as f:content = f.read()print(content)# 以写入模式打开文件 with open('path/to/file.txt', 'w') as f:f.write('Hello, world!')# 以追加模式打开文件 with open('path/to/file.txt', 'a') as f:f.write('Hello, world again!')
-
-
文本文件编码方式
在Python中,可以使用
open(encoding = 'utf-8')
函数打开文件时指定文件的编码方式。-
常见的文本文件编码方式
- utf-8
- gbk
-
不同的文本文件编码方式在保存同一个符号的编码值的时候采用的字节数不同、
-
原则是存进去的时候用的什么编码方式,读的时候就用什么编码方式
- 在Python中,可以使用
chardet
模块来检测文件的编码方式。chardet
模块可以自动检测文件的编码方式,并返回一个包含编码方式和可信度的字典。 - 以下是一个简单的例子:
import chardet# 检测文件的编码方式 with open('path/to/file', 'rb') as f:content = f.read()result = chardet.detect(content)# 打印检测结果 print(result['encoding'], result['confidence'])
- 在Python中,可以使用
-
-
-
文件读操作
文件对象.read
从读写位置开始到文件结束读操作会改变光标位置
with open('path/to/file.txt', 'r') as f:content = f.read() # 将读写位置移动到开头 f.seek(0) # 读一行 f.readline()
-
文件写操作
文件对象.write
-
关闭文件
文件对象.close
文件关闭之后就不能再操作文件