<html>
python学习第七天课后总结:
今日内容:
一,,字符编码:其实就是人类的语言与机器的语言进行转化的一种媒介。
1,人类语言与机器语言对照关系的结构被称为:编码表
常用编码表大致有以下几个:
1> ascii (ASCII) 现为今出现最早的编码表,采用一个字节来存储字母却无法编码汉字
2> GBK 这个是专门为中文来制作的编码,国人专用
3> Shift_JIS 日文使用的文件编码方式
4> Euc-kr 韩文使用的编码方式
3> Unicode 内部集成asscii的内容,并可以作为万国语言编码使用,采用二个字节 存汉字,同样二个字节存字母
特点:使用固定长度字节存储数据,但占用空间较多,但读取的效率却较高
4> UTF-8 跟Unicode一样,集成了ascii的编码,它其实是Unicode的一种表现式。 采用1个字节存字母,采用3-6个字节存汉字,不固定的存储长度。当大 量数据以英文形式存储时,UTF-8更具优势。传输更快。
特点:使用时占用空间较少,读取效率较底
总结:Unicode是作为万国编码来使用,集成各国的语言编码。电脑的内存是按照Unicode的编码形式 来存储数据的,硬盘则是按照UTF-8的编码形式来存储数据的。UTF-8也是采用Unicode的编码,
python2 是按照ascii编码来进行文件编码
python3 是按照UTF-8来进行文件编码
文件头:在进行文件操作时,要在代码第一行标使用的文件编码方式,让python解释器识别文件操作时使用 的编码方式。使用解释器按照指定的编码来解释文件的内容
文件操作: 其实就是对电脑硬盘上的一块指定区域进行读与写的操作。
**乱码: 乱码的形成是因为存储数据时与读取数据时使用的编码方式不同,所以才会产生乱码
二,文件的操作:
文件操作的步骤:1> 首先要打开文件:格式: f = open(文件绝对路径,操作模式,编码方式)
文件 :要提供绝对路径,方便程序识别文件位置
文件打开方式二种:1》 f = open(Source_File,"r",encoding="utf-8")
2》 with open(Source_File,"r",encoding="utf-8") as f
二种方式都表示以只读方式,编码为"UTF-8"的格式打开 Source_File这个文件
Source_File = r"/Users/evo/Desktop/python/Class/test.txt" 指定要操作的文件的绝对路径
操作模式:分为主模式与从模式:
主模式分为 1 "r" 默认只读模式,只能读取,不能进行其它操作 默认文件的指针在文件开头
例: f = open(Source_File,"r",encoding="utf-8") 以只读方式打开Source_File
2 "w" 表示写操作,不能进行读取,如文件存在,则覆盖
如不存在,则创建文件
例:f = open(Source_File,"w",encoding="utf-8") 以写的方式打开一个文件
3 "a" 打开一个文件用于追加,如文件存在,文件指针在
文件的结尾,新的内容从原文件内容的结尾开始追回
例:f = open(Source_File,"a",encoding="utf-8") 以追加模式打开文件
从模式分为:1:"b" 表示文件内容以二进制字节形式操作
2: "t" 按照字符的形式操作
3: "+" 表示操作时即可读取,也可写入
2> 操作文件:主要是文件的读与写
文件的读取: f.read() 文件按字节读取:
括号后可指定一次性读取的字节数量,默认读取文 件的全部内容,如果文件较大,不能使用此方法
f.readline() 文件按行读取
括号内可指定一次性读取的行数,哪不指定,默认 为每次读取文件一行的内容 f.readlines() 文件按行读取,并汇成一个列表,文件每一行 的内容便成为列表中的一个元素
3> 关闭文件 。这一步非常重要,如果不关闭文件,操作大容量文件容易内存溢出
,且因为文件的操作是存储在内存中,如遇断电,数据容易丢失。所以在文件操作 完毕后,在要后面加上 f.close() 来结束整个文件操作的流程
*******************************使用 with open() as f: 方式打开文件,不用考虑关闭文件的问题。
打开文件: **open(****文件名,访问模式)**
关闭文件:**close(****文件名,访问模式)**
**访问模式:**
r 以只读方式打开 **默认**指针在文件开头
w 打开文件用于写入,如存在,则覆盖,如不存在,则创建
a 打开一个文件用于追加,如文件存在,文件指针将会在文件的结尾,新的内容会写入到已有的内容之 后,如文件不存在,则创建
rb 以二进制格式打开,用于只读,文件指针在文件开头。
wb 以二进制格式打开只用于写入,
ab 以二进制格式打开文件用于追加,如文件存在,指针将会在文件结尾,如不存在,创建新文件写入
r+ 打开一个文件用于读写,指针将会放在文件开头
w+ 打开一个文件用于读写,如文件存在,指针在文件结尾,如文件不存在,创建新文件用于读写
rb+ 以二进制打开一个文件用于读写,指针在文件开头
wb+ 以二进制打开一个文件用于读写,如存在,则覆盖,如不存在,则创建
ab+ 以二进制打开一个文件用于追加,如文件存在,指针在结尾,如不存在,创建新文件用于读写
文件拷贝实例:
```python
source_file = r"/Users/aibapspl/Desktop/info/Search_Memo.txt" #定义一个源文件
Dst_file = r"/Users/aibapspl/Desktop/info/dst_test.txt" #定义一个目标文件
with open(source_file,"r",encoding="utf-8") as f: #使用只读方式打开源文件,并赋值给f
with open(Dst_file,"a",encoding="utf-8") as f1: #使用追加方式打开目标文件,并赋值给f1
for i in f: #迭代读取源文件的内容,并每次赋值给i
f1.write(i) #把每次迭代获得的数据写入目标文件
#到此 文件复制已经完成
```