文件是有序的数据序列。
编码(了解即可)
ASCII码
七个二进制位编码,表示128个字符。
ASCII码和字符的转换
ord('A'):字符 -> ASCII码
chr('65'):ASCII码 -> 字符
Unicode
跨语言、跨平台
统一且唯一的二进制编码
每个字符两个字节长
65536个字符的编码空间
UTF-8编码
可变长度的Unicode

文件操作
打开文件
open()函数,语法格式如下
<variable> = open(<name>, <mode>)
<variable>其实是一个指针
<name>为文件名
<mode>为打开模式

举例:
1.打开一个名为“numbers.dat”的文本文件(ASCII文件)
>>>infile = open("numbers.dat", "r")
2.打开一个名为“music.mp3”的音频文件(为二进制文件)
>>>infile = open("music.mp3", "rb")
文件操作
文件读取
文件读取的函数:
read():返回值为包含整个文件内容的一个字符串stringreadline():返回值为文件下一行内容的字符串string- readlines():返回值为整个文件内容的列表
list,每项是以换行符为结尾的一行字符串string。

print(line[:-1])为去掉读取文件中多加的换行符。
文件写入
文件读取的函数:
write():把含有文本数据或二进制数据块的字符串写入到文件中。writelines():针对列表操作,接受一个字符串列表作为参数,将他们写入文件,且行结束符不会被自动加入。

遍历文件模板
通用代码框架
file = open("filename", "r")
for line in file.readlines():
# 处理一行文件内容
file.close
简化代码框架(常用)
file = open("filename", "r")
for line in file:
# 处理一行文件内容
file.close()
示例1:拷贝文件

示例2:读取文件
待读取文件以“,”分隔,具体如下图:

读取文件的代码如下
result=[]
file = open("data.txt", "r")
for line in file:
result.append(list(map(float,line.split(','))))
print(result)
首先我们将result定义为一个空list。
在读取的过程中,先通过line.split(',')对每一行通过","分割。
然后用map(float,line.split(','))将分割后的元素转为float类型。
之后通过list(map(float,line.split(',')))将其转为list。
再通过.append()附加到result上。
示例3:多文件操作

本文介绍Python相关知识,包括编码和文件操作。编码部分提及ASCII码、Unicode和UTF - 8编码;文件操作部分涵盖打开文件、文件读取(如read、readline、readlines函数)、文件写入(如write、writelines函数),还给出遍历文件的通用和简化代码框架及示例。

被折叠的 条评论
为什么被折叠?



