'''
文件基本操作 :
打开文件 : open("directory or file_name", mode = "", encoding = "")
mode :
r : 读;
a : 追加写,首次写,并不会清空文件以前的内容;
w : 写,首次写时,会清空掉文件中的所有内容,写入新的内容;在同一个代码块中,在该模式下,多次执行写操作,除首次写操作外,其他写操作
均不会清空以前内容,而是在上次写入的内容后面继续写入新的内容;
rb : 以字节的形式读取文件;
ab : 以字节的形式追加写;
wb : 以字节的形式写;
//注 : 应用场景,非文本文件操作;
+ : 拓展模式;
r+ : 读写模式;
w+ : 写读模式;
a+ : 追加写读模式;
r+b : 字节形式下的读写模式;
w+b : 字节形式下的写读模式;
a+b : 字节形式下的追加写读模式;
文件路径 :
绝对路径 : 从根节点开始查找文件
相对路径 : 相对于当前文件所在路径开始查找文件;
读写函数 :
file.read(num) //一次性读取文件的num个字符,默认动作,读取文件中的全部字符,容易导致内存溢出;
file.readline() //读取文件的一行文本,同一个代码块中,再次执行时,则从上一次读取结束位置开始读取;
file.readlines() //以行为单位读取文件,并返回一个列表;
//注 : 以open打开文件赋值给变量file后,file为一个可迭代对象,每次读取文件的一行;
file.close() //关闭文件,每次打开读取文件后,必备的配套出现的函数;
file.write("str") //在文件写入新的文本;
file.flush() //但在文本中写入新的内容,必须与之配套出现的函数;
光标 : 读文件执行读或写的操作是,均是以光标为参考,光标默认起始位置在文件开头位置;
查看光标当前所在为位置 : file.tell()
移动光标位置 : file.seek(偏移量, 位置)
偏移量 : 也即将光标从当前位置移动的字节数;
位置 : 快速移动光标位置 :
0 : 表文件开头;
1 : 表当前位置;
2 : 表文件末尾;
截断文件 : file.truncate(偏移量) //如果没有实参传入,则以光标为准截断文件,否则,以实参传入的值为准截断文件;
文件修改 :
修改流程 : 将原文件读入修改后,写入行的文件中,然后删除旧文件,重命名新文件;
打开文件的另一种方式 : with open() as var1,....,with open() as varn :
//优点:自动原本需要用户手动完成的file.flush(),file.close()等操作;
删除和重命名文件 :
import os
os.remove(file_name)
os.rename(old_file_name, new_file_name)
让程序暂时暂停 :
import time
time.sleep(time_scale) //单位为秒;
'''
本文标题:Python之文件的基本操作
文章位置:
http://cdxtjz.cn/article/ijdiio.html