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 相关文章推荐
MySQLdb ImportError: libmysqlclient.so.18解决方法
Aug 21 Python
python解析xml文件操作实例
Oct 05 Python
Python栈算法的实现与简单应用示例
Nov 01 Python
python主线程捕获子线程的方法
Jun 17 Python
python实现自动网页截图并裁剪图片
Jul 30 Python
Python解决两个整数相除只得到整数部分的实例
Nov 10 Python
新手入门学习python Numpy基础操作
Mar 02 Python
PyCharm取消波浪线、下划线和中划线的实现
Mar 03 Python
解决python调用自己文件函数/执行函数找不到包问题
Jun 01 Python
python怎么自定义捕获错误
Jun 29 Python
Python安装Bs4的多种方法
Nov 28 Python
单身狗福利?Python爬取某婚恋网征婚数据
Jun 03 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
模仿OSO的论坛(一)
2006/10/09 PHP
一个PHP数组应该有多大的分析
2009/07/30 PHP
PHP使用GIFEncoder类处理gif图片实例
2014/07/01 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
PhpSpreadsheet设置单元格常用操作汇总
2020/11/13 PHP
简单的前端js+ajax 购物车框架(入门篇)
2011/10/29 Javascript
js中复制行和删除行的操作实例
2013/06/25 Javascript
返回上一页并自动刷新的JavaScript代码
2014/02/19 Javascript
一个简单的实现下拉框多选的插件可移植性比较好
2014/05/05 Javascript
JS实现点击上移下移LI行数据的方法
2015/08/05 Javascript
理解javascript闭包
2015/12/15 Javascript
Javascript 制作图形验证码实例详解
2016/12/22 Javascript
JS+HTML5 FileReader对象用法示例
2017/04/07 Javascript
微信小程序中setInterval的使用方法
2017/09/29 Javascript
JavaScript判断变量名是否存在数组中的实例
2017/12/28 Javascript
微信小程序框架wepy之动态控制类名
2018/09/14 Javascript
js实现ATM机存取款功能
2020/10/27 Javascript
JS实现提示效果弹出及延迟隐藏的功能
2019/08/26 Javascript
ES6 Promise对象概念及用法实例详解
2019/10/15 Javascript
如何解决vue在ios微信"复制链接"功能问题
2020/03/26 Javascript
js实现星星打分效果
2020/07/05 Javascript
nestjs中异常过滤器Exceptionfilter的具体使用
2021/02/07 Javascript
Django使用 Bootstrap 样式修改书籍列表过程解析
2019/08/09 Python
Python3常用内置方法代码实例
2019/11/18 Python
Python中猜拳游戏与猜筛子游戏的实现方法
2020/09/04 Python
北美女性服装零售连锁店:maurices
2019/06/12 全球购物
Eton丹麦官网:精美的男式衬衫
2020/05/27 全球购物
2015年幼儿园毕业感言
2014/02/12 职场文书
班级出游活动计划书
2014/08/15 职场文书
构建和谐校园倡议书
2015/01/19 职场文书
2015年度班主任自我评价
2015/03/11 职场文书
大学生学习十八届五中全会精神心得体会
2016/01/05 职场文书
妇联2016年六一国际儿童节活动总结
2016/04/06 职场文书
MySQL中几种插入和批量语句实例详解
2021/09/14 MySQL
MySQL连接控制插件介绍
2021/09/25 MySQL
阿里云服务器(windows)手动部署FTP站点详细教程
2022/08/05 Servers