Python--文件操作
一、文件路径
1.1绝对路径
绝对路径是从文件系统的根目录开始的一条完整路径。
比如:C:\users\T\test\1.txt
一般是用的反斜杠,在程序中使用该路径通常需要添加反斜杠或者r,让它不发生转义。
1.2相对路径
相对路径是根据某个起点到达目标文件的路径。它更加灵活,通常适用于同一目录层级的文件访问。
比如:./test/1.txt (当前目录)
../test/2.txt (父级目录),此时这个文件就不是一个层级的。
二、open函数
open函数用来打开文件,这个函数返回一个文件对象,可以进行后续的读写操作。
res = open(file_name,mode='r',encoding = 'utf-8',closefd = True)
参数解释:
mode:文件的打开模式;
closefd:在文件关闭时是否关闭文件描述符。为True则关闭。
注意:利用open函数打开文件后一定要记得关闭释放资源。
三、文件模型
常见的几种文件模式:
(1)'r':read只读模型;
(2)'r+':打开文件进行读写,但是必须确保文件存在,能找到位置;
(3)'w':写入模式,文件存在则覆盖,不存在则创建;
(4)'w+':打开文件进行读写,文件不存在会创建;
注意:w操作要谨慎使用,虽然是写的操作,但是他会先清空文本中的所有数据记录,然后再开始写。
(5)'a':追加模式,在文件末尾追加内容;
(6)'a+':打开文件进行读写,在文件末尾追加内容。
四、读写操作
4.1读取文件
(1)read(size):size为可选参数,即读取多少字符或字节
注意:一个中文字体需要占用三个字节,英语字符还是只占一个字节。
(2)readline():从文件中读取单行;
(3)readlines():读取文件的所有行,并返回一个列表。
4.2写入文件
将内容写入文件:
(1)write(str):将str的内容写到文件指针的后面;
(2)writelines():写入一个字符串列表。
五、关闭操作
close()
将文件资源释放掉,刷新缓冲区。
六、with语句
利用with语句打开的文件,可以不用在手动关闭文件、释放资源。
with open(path,'r') as f:
print(f.read())
七、代码实现
with open(csv_path,'r',encoding='utf-8-sig') as f:with open(word_index_path,'w',encoding='utf-8-sig') as f1:word_index = {}index = 1lines = f.readlines()for line in lines:line =line.replace('\n','')for word in line:if word in punctuation:continueif (word not in punctuation) and (word not in word_index):word_index[word] = indexindex += 1f1.write(str(word_index))print('字典文件处理成功')
这一段代码的意思就是从csv文件中处理字典,并将字典写入word_index。处理完成后字典文件会保存在字典的路径中。