python中操作文件的模块的方法总结


Posted in Python onFebruary 04, 2021

在python中操作文件算是一个基本操作,但是选对了模块会让我们的效率大大提升。本篇整理了两种模块的常用方法,分别是os模块和shutil模块。相信这两种模块大家在之间的学习中有所涉及,那么关于具体的文件操作部分,我们一起往下看看都有哪些方法和实例吧。

本教程操作环境:windows7系统、Python3版、Dell G3电脑。

Python对文件操作采用的统一步骤是:打开—操作—关闭。

一、python中对文件、文件夹操作时经常用到的os模块和shutil模块常用方法

1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()

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

3.函数用来删除一个文件:os.remove()

4.删除多个目录:os.removedirs(r"c:\python")

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

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

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

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

9.返回一个路径的目录名和文件名:os.path.split()

二、文件综合操作实例

将文件夹下所有图片名称加上'_fc'

# -*- coding:utf-8 -*-
import re
import os
import time
#str.split(string)分割字符串
#'连接符'.join(list) 将列表组成字符串
def change_name(path):
global i
if not os.path.isdir(path) and not os.path.isfile(path):
return False
if os.path.isfile(path):
file_path = os.path.split(path) #分割出目录与文件
lists = file_path[1].split('.') #分割出文件与文件扩展名
file_ext = lists[-1] #取出后缀名(列表切片操作)
img_ext = ['bmp','jpeg','gif','psd','png','jpg']
if file_ext in img_ext:
os.rename(path,file_path[0]+'/'+lists[0]+'_fc.'+file_ext)
i+=1 #注意这里的i是一个陷阱
#或者
#img_ext = 'bmp|jpeg|gif|psd|png|jpg'
#if file_ext in img_ext:
# print('ok---'+file_ext)
elif os.path.isdir(path):
for x in os.listdir(path):
change_name(os.path.join(path,x)) #os.path.join()在路径处理上很有用
img_dir = 'D:\\xx\\xx\\images'
img_dir = img_dir.replace('\\','/')
start = time.time()
i = 0
change_name(img_dir)
c = time.time() - start
print('程序运行耗时:%0.2f'%(c))
print('总共处理了 %s 张图片'%(i))

实例扩展:

#! python 3
# -*- coding:utf-8 -*-
# Autor: GrayMac
import shutil
import os

basefileclass = 'basefile'
#sourcefile:源文件路径 fileclass:源文件夹 destinationfile:目标文件夹路径
def copy_file(sourcefile,fileclass,destinationfile):
 #遍历目录和子目录
 for filenames in os.listdir(sourcefile):
  #取得文件或文件名的绝对路径
  filepath = os.path.join(sourcefile,filenames)
  #判断是否为文件夹
  if os.path.isdir(filepath):
   if fileclass == basefileclass :
    copy_file(filepath,fileclass + '/' + filenames,destinationfile + '/' + filenames)
   else :
    copy_file(filepath,fileclass,destinationfile + '/' + filenames)
  #判断是否为文件
  elif os.path.isfile(filepath):
   print('Copy %s'% filepath +' To ' + destinationfile)
   #如果无文件夹则重新创建
   if not os.path.exists(destinationfile):
    os.makedirs(destinationfile)
   shutil.copy(filepath,destinationfile)
    
copy_file(sourcefile,basefileclass,destinationfile)

到此这篇关于python中操作文件的模块的方法总结的文章就介绍到这了,更多相关python中操作文件的模块有几种内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现从字典中删除元素的方法
May 04 Python
深入解析Python中的lambda表达式的用法
Aug 28 Python
Python只用40行代码编写的计算器实例
May 10 Python
Python面向对象之类和对象实例详解
Dec 10 Python
Python正则表达式和re库知识点总结
Feb 11 Python
pandas读取CSV文件时查看修改各列的数据类型格式
Jul 07 Python
python实现五子棋游戏(pygame版)
Jan 19 Python
Python log模块logging记录打印用法解析
Jan 20 Python
Python3搭建http服务器的实现代码
Feb 11 Python
python绘制动态曲线教程
Feb 24 Python
Python模块相关知识点小结
Mar 09 Python
如何用Python进行时间序列分解和预测
Mar 01 Python
Python3利用openpyxl读写Excel文件的方法实例
Feb 03 #Python
python之openpyxl模块的安装和基本用法(excel管理)
Feb 03 #Python
python中time.ctime()实例用法
Feb 03 #Python
python中Array和DataFrame相互转换的实例讲解
Feb 03 #Python
利用Python过滤相似文本的简单方法示例
Feb 03 #Python
python time.strptime格式化实例详解
Feb 03 #Python
Python字符串的15个基本操作(小结)
Feb 03 #Python
You might like
用PHP实现读取和编写XML DOM代码
2010/04/07 PHP
ThinkPHP基本的增删查改操作实例教程
2014/08/22 PHP
jQuery对象[0]是什么含义?
2010/07/31 Javascript
jquery+json实现数据列表分页示例代码
2013/11/15 Javascript
jquery实现的鼠标拖动排序Li或Table
2014/05/04 Javascript
在NodeJS中启用ECMAScript 6小结(windos以及Linux)
2014/07/15 NodeJs
javascript中返回顶部按钮的实现
2015/05/05 Javascript
Angular2  NgModule 模块详解
2016/10/19 Javascript
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
2016/12/14 Javascript
微信JSAPI Ticket接口签名详解
2020/06/28 Javascript
微信小程序 scroll-view实现锚点滑动的示例
2017/12/06 Javascript
vue2.0 datepicker使用方法
2018/02/04 Javascript
vue添加axios,并且指定baseurl的方法
2018/09/19 Javascript
js核心基础之构造函数constructor用法实例分析
2019/05/11 Javascript
Vue实现简易购物车页面
2020/12/30 Vue.js
[01:02]2014 DOTA2国际邀请赛中国区预选赛 现场抢先看
2014/05/22 DOTA
[01:07:13]TNC vs Pain 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
Python计算一个文件里字数的方法
2015/06/15 Python
python合并同类型excel表格的方法
2018/04/01 Python
Python之csv文件从MySQL数据库导入导出的方法
2018/06/21 Python
python覆盖写入,追加写入的实例
2019/06/26 Python
python实现连续变量最优分箱详解--CART算法
2019/11/22 Python
python检查目录文件权限并修改目录文件权限的操作
2020/03/11 Python
使用OpenCV去除面积较小的连通域
2020/07/05 Python
Python3 + Appium + 安卓模拟器实现APP自动化测试并生成测试报告
2021/01/27 Python
Web Service面试题:如何搭建Axis2的开发环境
2012/06/20 面试题
暑假实习求职信范文
2013/09/22 职场文书
客户代表自我评价范例
2013/09/24 职场文书
毕业自我鉴定
2013/11/05 职场文书
《圆明园的毁灭》教学反思
2014/02/28 职场文书
《蒲公英》教学反思
2014/02/28 职场文书
中级会计大学生职业生涯规划书
2014/09/16 职场文书
客户经理岗位职责大全
2015/04/09 职场文书
2015七夕情人节宣传语
2015/07/14 职场文书
2016秋季运动会前导词
2015/11/25 职场文书
远程教育学习心得体会
2016/01/23 职场文书