8.file方法与os

1、文件常用函数
1)open(路径,模式)方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要
模式:r 读 w 写 a 追加 +(读写)
常用模式:
r+
r
rb
rb+
w
w+
wb+
ab
ab+
a

注意:使用完文件一定记得关闭close()

2)编辑
# file1=open('test.txt','w+')
# file1.write("test1")
# file1.close()

#写入多行内容
file1=open('test1.txt','w+')
file1.write(" test1 test2 test3 test4 test5 tests6 test7")
file1.close()

# #在当前文件中再增加一行‘test8’
# file5=open('test1.txt','a+')
# file5.write(" test8 test9")
# file5.close()

3)读取

1)# read(n)读取指定字节长度的内容

file2=open('test.txt','r+')
print(file2.read())
file2.close()

2)readline() 一行一行读取文件内容
# file2=open('test.txt','r+')
# print(file2.readline())
# print(file2.readline())
# file2.close()

3)readlines()读取文件所有的内容,返回到一个列表中

# 读取文件所有内容,返回list
file3=open('test.txt','r+')
print(file3.readlines())

# 读取某一行数据
file3=open('test.txt','r+')
print(file3.readlines()[3])

4)# 获取读取指针的位置tell()

# file4=open('test.txt','r+')
# print(file4.read(7))
# # file4.readline()
# print('获取读取指针位置:',file4.tell())
# file4.close()


5)seek(偏移数,参数数) 通过函数改变指针的位置,从而读取对应内容
# 参数数: 0 文件开头
# 1 当前位置
# 2 文件末尾

file6=open('test.txt','r+')
file6.seek(4,0)
print('指针偏移读取:',file6.readline())
file6.seek(0,0)
print(file6.read(6))
file6.close()

6) with...as...自动关闭文件,而不需要另外调用close()方法来关闭
语法结构:
with open(路径,模式) as 变量:
代码块

with open('test.txt','r') as filen:
# 文件进行操作
print(filen.read())

2、os模块 该模块提供很多方法来处理文件及目录的方法

1)mkdir(path)创建目录
path=r'C:UserssusuDesktopTest'
# 创建目录
# os.mkdir(path)

2)删除空目录rmdir(path)
# os.rmdir(path)

3)#删除非空目录

import shutil
shutil.rmtree(path)

4) rename(原来文件名,新文件名)
# os.mkdir(path)
# os.rename(r'C:UserssusuDesktopTest',r'C:UserssusuDesktopTest1')

5)获取当前文件项目路径
print(os.getcwd())


6)os.access(path, mode)检验文件或目录的权限
· # Mode:os. F_OK(是否存在)、os.R_OK(可读 )、os.W_OK(可写)、os.X_OK(可执行)

7)os.path模块常用函数

path=r'C:UserssusuDesktopTest1 est.txt'
# 判断路劲是否文件或者目录
print('判断是否为文件',os.path.isfile(path)) #判断是否为文件
print('判断是否为目录',os.path.isdir(path) ) #判断是否为目录
print('目录和文件拼接成路径:',os.path.join(r'C:UserssusuDesktopTest1','test2.txt') ) #把目录和文件合成路径
print('把路径分割成目录和文件存放元组里:',os.path.split(path),type(os.path.split(path))) #把路径分割成目录和文件存放元组里


8)更改文件目录权限os.chmod(path, mode)
mode:OTH 其他用户
USR 所属用户
GRP 组用户
X 可执行)
R 可读
W 可写

#修改文件的所属用户的权限为可读可写可执行
path=r'C:UserssusuDesktopTest1 est.txt'
os.chmod(path, stat.S_IRWXU)










原文地址:https://www.cnblogs.com/Murraya/p/14020980.html