O听_海_轩O / python / python os模块 读写、创建 文件

分享

   

python os模块 读写、创建 文件

2020-03-13  O听_海_轩O

python os模块 对文件夹、文件(文件操作函数)

os.getcwd()  #返回当前工作路径

os.path.isabs()  #判断是否是绝对路径

os.path.isfile()  #检验给出的路径是否是一个文件

os.path.isdir()  #检验给出的路径是否是一个目录

os.sep  #文件的路径分隔符 如:在windows上是 '\'  而在Linux上是 '/'

os.walk()  #文件遍历
 如:def file_name(file_dir):
    for root, dirs, files in os.walk(file_dir):
        print('root_dir:', root)  # 当前目录路径
        print('sub_dirs:', dirs)  # 当前路径下所有子目录
        print('files:', files)  # 当前路径下所有非目录子文件
        
    file_name('E:/vmware')
 

os.path.splitext()  #分离扩展名

os.system()  #运行shell命令:

os.path.exists()  #检验给出的路径是否真地存:

os.getenv() 与os.putenv()  #读取和设置环境变量

os.linesep  #给出当前平台使用的行终止符	如: windowss使用'\r\n'  ,Linux使用'\n'而Mac使用'\r'

os.name #指示你正在使用的平台:	如:对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'

os.chmod(file) #修改文件权限与时间戳

os.exit()  #终止当前进程 

目录操作:

os.makedirs("file1/file2/file3") 	 #创建文件夹目录. 创建多级目录
os.mkdir("file")    # 创建文件夹. 但是上级目录必须存在

os.copy("oldfile","newfile")   #oldfile只能是文件夹,newfile可以是文件,也可以是目标目录

os.rename("oldname","newname")   #重命名文件(目录)    文件或目录都是使用这条命令

os.removedirs()   # 删除多级目录, 要求必须是空的
os.rmdir("dir")	#只能删除空目录  

os.listdir()  #返回指定目录下的所有文件和目录名

os.path.split(path)  #返回一个路径的目录名和文件名   
os.path.dirname()  #获取路径名
os.path.basename() #获取文件名

os.path.getsize(filename) #获取文件大小

os.chdir("path")   换路径

以下为shutil模块 对文件和目录操作

shutil.copytree("olddir","newdir")   #复制文件夹: olddir和newdir都只能是目录,且newdir必须不存在

shutil.move("oldpos","newpos")    #移动文件(目录)

Python文件读写操作

os.remove()  #删除文件 或空文件夹

os.stat() #获取文件属性

with open("abc.txt",mode="w",encoding="utf-8") as f:  #写文件,当文件不存在时,就直接创建此文件
   pass
encoding #文件编码 
mode #打开模式 
name #文件名 

关于open 模式:
w     以写方式打开,
a     以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r     以读写模式打开
w+     以读写模式打开 (参见 w )
a+     以读写模式打开 (参见 a )
rb     以二进制读模式打开
wb     以二进制写模式打开 (参见 w )
ab     以二进制追加模式打开 (参见 a )
rb+    以二进制读写模式打开 (参见 r+ )
wb+    以二进制读写模式打开 (参见 w+ )
ab+    以二进制读写模式打开 (参见 a+ )

lines = object_file.readlines( )  #读第一行
for line in file_object:  #如果文件是文本文件,还可以直接遍历文件对象获取每行:
     print(line)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多
    喜欢该文的人也喜欢 更多

    ×
    ×

    ¥.00

    微信或支付宝扫码支付:

    开通即同意《个图VIP服务协议》

    全部>>