Python文件与文件夹常见基本操作总结


Posted in Python onSeptember 19, 2016

本文实例讲述了Python文件与文件夹常见基本操作。分享给大家供大家参考,具体如下:

1、判断文件(夹)是否存在。

os.path.exists(pathname)

2、判断路径名是否为文件。

os.path.isfile(pathname)

3、判断路径名是否为目录。

os.path.isdir(pathname)

4、创建文件。

os.mknod(filename)  #windows下不可用
open(filename, "w")  #记得要关闭

5、复制文件。

shutil.copyfile("oldfile", "newfile")  #oldfile和newfile都只能是文件
shutil.copy("oldfile", "newfile")  #oldfile只能是文件,newfile可以是文件,也可以是目标目录

6、删除文件。

os.remove(filename)

7、清空文件。

file = open("test.txt", w)
file.seek(0)
file.truncate() #注意文件指针的位置
file.close()

8、创建目录。

os.mkdir(pathname)    #创建单级目录
os.makedirs(pathname)   #递归创建多级目录

9、复制目录。

shutil.copytree("olddir", "newdir")
#olddir和newdir都只能是目录,且newdir必须不存在

10、重命名文件或目录。

os.rename(oldname, newname)

11、移动文件或目录。

shutil.move(oldpath, newpath)

12、删除目录。

os.rmdir("dir")   #不能删除非空目录
'''
#可以删除非空目录,目录打开时也能删除
#约等于'rd /Q /S dir'
'''
shutil.rmtree("dir")

12.1、清空目录。

#encoding=utf-8
#适用于python3.5+
import os, sys, time, shutil
#清空目录
def ClearDir(dir):
  print('ClearDir ' + dir + '...')
  for entry in os.scandir(dir):
    if entry.name.startswith('.'):
      continue
    if entry.is_file():
      os.remove(entry.path)  #删除文件
    else:
      shutil.rmtree(entry.path)  #删除目录

13、切换目录。

os.chdir(newpath)

14、open常用模式。

'r':  只读(缺省。如果文件不存在,则抛出错误。)
'w':  只写(如果文件不存在,则自动创建文件。)
'a':  追加
'r+': 读写

15、由全路径名的到路径和文件名。

>>> pathfile = r'D:\abc\def\ghi.txt'
>>> os.path.dirname(pathfile)
'D:\\abc\\def'
>>> os.path.basename(pathfile)
'ghi.txt'

16、获取文件大小。

os.path.getsize(pathfile)
#单位为字节(Byte)

17、获取当前文件目录绝对路径。

import os, sys
if __name__ == "__main__":
  os.chdir('E:\\')
  print(sys.path[0])
  print(os.path.abspath('.'))
  print(os.path.dirname(os.path.abspath(__file__)))

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
采用Psyco实现python执行速度提高到与编译语言一样的水平
Oct 11 Python
Python中使用第三方库xlrd来读取Excel示例
Apr 05 Python
python简单实现计算过期时间的方法
Jun 09 Python
基于python的七种经典排序算法(推荐)
Dec 08 Python
python 计算数组中每个数字出现多少次--“Bucket”桶的思想
Dec 19 Python
通过Python 接口使用OpenCV的方法
Apr 02 Python
python实现简单tftp(基于udp协议)
Jul 30 Python
解决Pycharm界面的子窗口不见了的问题
Jan 17 Python
使用Python的datetime库处理时间(RPA流程)
Nov 24 Python
Python 开发工具PyCharm安装教程图文详解(新手必看)
Feb 28 Python
Python使用os.listdir和os.walk获取文件路径
May 21 Python
使用Keras实现Tensor的相乘和相加代码
Jun 18 Python
Python实现批量更换指定目录下文件扩展名的方法
Sep 19 #Python
Python按行读取文件的实现方法【小文件和大文件读取】
Sep 19 #Python
Python遍历目录并批量更换文件名和目录名的方法
Sep 19 #Python
Python实现更改图片尺寸大小的方法(基于Pillow包)
Sep 19 #Python
Python自定义进程池实例分析【生产者、消费者模型问题】
Sep 19 #Python
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
Sep 19 #Python
Python操作Access数据库基本步骤分析
Sep 19 #Python
You might like
linux下为php添加curl扩展的方法
2011/07/29 PHP
PHP Yaf框架的简单安装使用教程(推荐)
2016/06/08 PHP
阿里云PHP SMS短信服务验证码发送方法
2017/07/11 PHP
thinkPHP5框架分页样式类完整示例
2018/09/01 PHP
phpstudy隐藏index.php的方法
2020/09/21 PHP
php中使用array_filter()函数过滤数组实例讲解
2021/03/03 PHP
JAVASCRIPT对象及属性
2007/02/13 Javascript
给页面渲染时间加速 干掉Dom Level 0 Event
2012/12/19 Javascript
Jquery修改页面标题title其它JS失效的解决方法
2014/10/31 Javascript
深入探寻javascript定时器
2015/01/02 Javascript
JSONP之我见
2015/03/24 Javascript
深入理解setTimeout函数和setInterval函数
2016/05/20 Javascript
IOS中safari下的select下拉菜单文字过长不换行的解决方法
2016/09/26 Javascript
微信小程序 在线支付功能的实现
2017/03/14 Javascript
vue 粒子特效的示例代码
2017/09/19 Javascript
详解koa2学习中使用 async 、await、promise解决异步的问题
2018/11/13 Javascript
JavaScript 闭包的使用场景
2020/09/17 Javascript
antd table按表格里的日期去排序操作
2020/11/17 Javascript
[01:02:18]VGJ.S vs infamous Supermajor 败者组 BO3 第一场 6.4
2018/06/05 DOTA
利用Python如何生成随机密码
2016/04/20 Python
python实现教务管理系统
2018/03/12 Python
Python实现线程状态监测简单示例
2018/03/28 Python
Python paramiko模块的使用示例
2018/04/11 Python
使用实现pandas读取csv文件指定的前几行
2018/04/20 Python
对Python 3.5拼接列表的新语法详解
2018/11/08 Python
Python获取航线信息并且制作成图的讲解
2019/01/03 Python
pytorch获取模型某一层参数名及参数值方式
2019/12/30 Python
Pytorch之contiguous的用法
2019/12/31 Python
css3中仿放大镜效果的几种方式原理解析
2020/12/03 HTML / CSS
阿里云:Aliyun.com
2017/02/15 全球购物
数控专业推荐信范文
2013/12/02 职场文书
领导党性分析材料
2014/02/15 职场文书
电力培训心得体会
2014/09/02 职场文书
党的群众路线个人对照检查材料
2014/09/23 职场文书
奖学金感谢信
2015/01/21 职场文书
通用员工手册范本
2015/05/14 职场文书