"r" 以读方式打开,只能读文件 , 如果文件不存在,会发生异常
"w" 以写方式打开,只能写文件, 如果文件不存在,创建该文。 如果文件已存在,先清空,再打开文件
"rb" 以二进制读方式打开,只能读文件 , 如果文件不存在,会发生异常
"wb" 以二进制写方式打开,只能写文件, 如果文件不存在,创建该文件。如果文件已存在,先清空,再打开文件
"rt" 以文本读方式打开,只能读文件 , 如果文件不存在,会发生异常
"wt" 以文本写方式打开,只能写文件, 如果文件不存在,创建该文件。如果文件已存在,先清空,再打开文件
"rb+" 以二进制读方式打开,可以读、写文件 , 如果文件不存在,会发生异常
"wb+" 以二进制写方式打开,可以读、写文件, 如果文件不存在,创建该文件。 如果文件已存在,先清空,再打开文件
注意:所有操作都只是在同级目录下进行创建,清空,打开操作。
(1)文件指针:
文件被打开后,其对象保存在 f 中, 它会记住文件的当前位置,以便于执行读、写操作,这个位置称为文件的指针( 一个从文件头部开始计算的字节数 long 类型 )。
(2)文件打开时的位置:
以"r" "r+" "rb+" 读方式, "w" "w+" "wb+"写方式 打开的文件,
一开始,文件指针均指向文件的头部。
(3) 获取文件指针的值:
L = f.tell()
(4) 移动文件的指针
f.seek( 偏移量, 选项 )
选项 =0 时, 表示将文件指针指向从文件头部到 "偏移量"字节处。
选项 =1 时, 表示将文件指针指向从文件的当前位置,向后移动 "偏移量"字节。
选项 =2 时, 表示将文件指针指向从文件的尾部,,向前移动 "偏移量"字节。
# import os # os.remove # os.rename # os.mkdir # os.rmdir # os.makedirs # os.removedirs # print(os.listdir("G:\老男孩视频课")) #列出目录下的所有文件 # print(os.stat(r"G:\老男孩视频课\day作业\代码量\bin-s17day12")) # #获取文件信息,如:文件大小,文件开始时间,关闭文件时间 # print内容 : os.stat_result(st_mode=33206, st_ino=30962247438188658, st_dev=1414404718, st_nlink=1, # st_uid=0, st_gid=0, st_size=39842, st_atime=1543826234, st_mtime=1543826234, st_ctime=1543826234) # ret = os.system("dir") #运行shell(操作系统)命令,直接显示 # ret = os.popen("dir") #执行操作系统命令 并返回结果 # print(ret.read()) #print(os.getcwd()) #当前python的工作目录 # open("test","w").close() #创建文件 # os.chdir(r"G:\老男孩视频课\venv") # open("test","w").close() #b把test文件创建到指定的文件目录下(G:\老男孩视频课\venv) # print(os.path.abspath("test")) #绝对路径 # print(os.path.split(r"G:\老男孩视频课\day作业\代码量\bin-s17day12")) #将最后一个文件或文件夹拆分出来,元组的形式 # print(os.path.dirname(r"G:\老男孩视频课\day作业\代码量\bin-s17day12")) #返回最后文件的上一级目录或文件夹 # print(os.path.basename(r"G:\老男孩视频课\day作业\代码量\bin-s17day12")) #返回路径最后的文件名 # print(os.path.exists(r"G:\老男孩视频课\day作业\代码量\bin-s17day12")) #如果路径存在,返回True,否则False # print(os.path.join("G:\\","老男孩视频课","day作业","代码量","bin-s17day12")) #拼接路径 # print(__file__) #当前文件的绝对路径 1.os.path.abspath(path) 返回path规范化的绝对路径
2.os.path.split(path) 将path分割成目录和文件名二元组返回。
如:os.path.split('c:\\csv\\test.csv')
('c:\\csv', 'test.csv')
>>> os.path.split('c:\\csv\\')
('c:\\csv', '')
3.os.path.dirname(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素。
>>> os.path.basename('c:\\test.csv')
'test.csv'
>>> os.path.basename('c:\\csv')
'csv' (这里csv被当作文件名处理了)
>>> os.path.basename('c:\\csv\\')
4.os.path.getsize(path) 返回path的文件的大小(字节)。
>>> os.path.getsize('c:\\boot.ini')