import os
file=r"..\sample\s1.txt"
fp_wr = os.open(file, os.O_RDWR | os.O_CREAT)
os.write(fp_wr,"I am well".encode("utf-8"))
os.close(fp_wr)
fp_rd = os.open(file, os.O_RDONLY)
msg = os.read(fp_rd,100)print(msg)
os.close(fp_rd)
result:b'I am well'
os.close关闭文件
os.close( fd )
os.read读取
os.read(fd, n),从文件描述符 fd 中读取最多 n 个字节,返回包含读取字节的字符串,文件描述符 fd对应文件已达到结尾, 返回一个空字符串。
os.write(fd, str)
os.write(fd, str),写入字符串到文件描述符 fd中. 返回实际写入的字符串长度。
路径系列
os.getcwd()
os.getcwd()方法用于返回当前工作目录,是个绝对路径字符串。
os.listdir()
os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。
它不包括 . 和 … 即使它在文件夹中,只列出一层。
# path: 需要列出的目录路径
os.listdir(path)
os.pardir
获取当前目录的父目录(上一级目录),以字符串形式显示目录名。
import os
print(os.getcwd())
result = os.pardir
print(os.path.abspath(result))
result:
F:\study\python\qt_study\qt_project\test
F:\study\python\qt_study\qt_project
import os
dir_path =r"..\June"
file_name =r"..\June\test.txt"print(os.path.abspath(dir_path))print(os.path.basename(dir_path))print(os.path.basename(file_name))
result:
F:\study\python\qt_study\qt_project\June
June
test.txt
os.path.dirname(path)
返回文件路径,返回的是目录名,不会返回最后一级文件名。
原来是啥路径就返回啥路径,原来没有,返回绝对路径,以字符串返回。
import os
dir_path =r"..\June"
file_name =r"..\June\test.txt"print(os.path.dirname(dir_path))print(os.path.dirname(file_name))
dir_path2 ="F:\study\python\qt_study\qt_project"print(os.path.dirname(dir_path2))
result:....\June
F:\study\python\qt_study
os.path.exists(path)
如果路径 path 存在,返回 True;如果路径 path 不存在,返回 False。
import os
dir_path =r"..\June"
file_name =r"..\June\test.txt"print(os.path.exists(dir_path))print(os.path.exists(file_name))
result:TrueTrue
os.path.getsize(path)
返回文件大小,如果文件不存在就返回错误,是文件夹名,则返回为0。
import os
dir_path =r"..\June"
file_name =r"..\June\test.txt"print(os.path.getsize(dir_path))print(os.path.getsize(file_name))
result:04
os.path.isabs(path)
判断是否为绝对路径。
os.path.isfile(path)
判断是否为文件。
os.path.isdir(path)
判断是否为目录。
import os
dir_path =r"F:\study\python\qt_study\qt_project\June"
file_name =r"..\June\test.txt"print(os.path.isabs(dir_path))print(os.path.isabs(file_name))print(os.path.isfile(dir_path))print(os.path.isfile(file_name))print(os.path.isdir(dir_path))print(os.path.isdir(file_name))
result:TrueFalseFalseTrueTrueFalse