python文件与目录操作实例详解


Posted in Python onFebruary 22, 2016

本文实例分析了python文件与目录操作的方法。分享给大家供大家参考,具体如下:

关于python文件操作的详细说明,大家可以参考前一篇《python文件操作相关知识点总结整理》

官方API:os-Miscellaneous operating system interfaces

下面是demo示例:

import re
import os
import time
#图片文件路径
image_path = 'E:\\test\\20130627_140132Hongten.jpg'
#文件夹路径
dir_path = 'E:\\test\\hongten'
#文件路径
file_abs_path = 'E:\\test\\hongten.txt'
#得到当前工作空间目录
def getcwd():
  return os.getcwd()
#获取指定文件夹下面的所有文件及文件夹
#如果指定的文件夹不存在,则返回相应的提示信息
def listdir(dir_path):
  if os.path.exists(dir_path):
    return os.listdir(dir_path)
  else:
    return '目录'+ dir_path + '不存在'
def isfile(file_path):
  if os.path.exists(file_path):
    return os.path.isfile(file_path)
  else:
    return '文件'+ dir_path + '不存在'
if __name__ == '__main__':
  print('当前的工作空间是:{0}'.format(getcwd()))
  print('当前的工作空间下的文件及目录:',listdir(getcwd()))
  print('#' * 40)
  print(listdir('c:\\test'))
  print('#' * 40)
  print(isfile(image_path))
  print('#' * 40)
  array = os.path.split(image_path)
  print(array)
  #文件全名:20130627_140132Hongten.jpg
  file_full_name = array[1]
  name = os.path.splitext(file_full_name)
  #文件名:20130627_140132Hongten
  file_name = name[0]
  #文件后缀:.jpg
  file_ext = name[1]
  print('文件全名:{0},文件名:{1},文件后缀:{2}'.format(file_full_name,file_name,file_ext))
  print('#' * 40)
  #创建空文件夹
  #os.mkdir('E:\\mydir')
  #创建多级目录
  #os.makedirs(r'E:\\bb\\cc')
  print('#' * 40)
  #打开一个文件
  fp = open(file_abs_path,'w+')
  #print('读取文件:{0}的第一行:{1}'.format(file_abs_path,fp.readline()))
  #把文件每一行作为一个list的一个成员,并返回这个list。其实它的内部是通过循环调用readline()来实现的。
  #如果提供size参数,size是表示读取内容的总长,也就是说可能只读到文件的一部分。
  #print('读取文件:{0}所有内容:{1}'.format(file_abs_path,fp.readlines()))
  content = 'this is a test message!!\ngood boy!\ngogo......\nhello,I\'m Hongten\nwelcome to my space!'
  fp.write(content)
  fp.flush()
  fp.close()
  fp = open(file_abs_path,'r+')
  print('读取文件:{0}所有内容:{1}'.format(file_abs_path,fp.readlines()))

运行效果:

Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>> 
当前的工作空间是:D:\Python33\workspace
当前的工作空间下的文件及目录: ['rename.py', 'test_annotation.py', 'test_class.py', 'test_exception.py', 'test_exit.py', 'test_file.py', 'test_getA.py', 'test_hello.py', 'test_import.py', 'test_input.py', 'test_loops.py', 'test_myclass.py', 'test_os.py', 'test_range.py', 'test_str.py', 'test_string.py', 'test_while.py', 'test_with.py']
########################################
目录c:\test不存在
########################################
True
########################################
('E:\\test', '20130627_140132Hongten.jpg')
文件全名:20130627_140132Hongten.jpg,文件名:20130627_140132Hongten,文件后缀:.jpg
########################################
########################################
读取文件:E:\test\hongten.txt所有内容:['this is a test message!!\n', 'good boy!\n', 'gogo......\n', "hello,I'm Hongten\n", 'welcome to my space!']
>>>

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

Python 相关文章推荐
python实现的一个火车票转让信息采集器
Jul 09 Python
Python数据类型详解(一)字符串
May 08 Python
谈谈如何手动释放Python的内存
Dec 17 Python
Python实现随机生成有效手机号码及身份证功能示例
Jun 05 Python
Python使用numpy产生正态分布随机数的向量或矩阵操作示例
Aug 22 Python
pycharm中使用anaconda部署python环境的方法步骤
Dec 19 Python
Pycharm 设置默认头的图文教程
Jan 17 Python
pycharm new project变成灰色的解决方法
Jun 27 Python
Python列表的切片实例讲解
Aug 20 Python
python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法
Aug 27 Python
python使用hdfs3模块对hdfs进行操作详解
Jun 06 Python
tensorflow+k-means聚类简单实现猫狗图像分类的方法
Apr 28 Python
python文件操作相关知识点总结整理
Feb 22 #Python
python实现搜索本地文件信息写入文件的方法
Feb 22 #Python
Python和JavaScript间代码转换的4个工具
Feb 22 #Python
python实现识别相似图片小结
Feb 22 #Python
python脚本设置系统时间的两种方法
Feb 21 #Python
python脚本设置超时机制系统时间的方法
Feb 21 #Python
Go语言基于Socket编写服务器端与客户端通信的实例
Feb 19 #Python
You might like
php date与gmdate的获取日期的区别
2010/02/08 PHP
比较简单实用的PHP无限分类源码分享(思路不错)
2011/10/13 PHP
php中使用in_array() foreach array_search() 查找数组是否包含时的性能对比
2015/04/14 PHP
PHP7扩展开发教程之Hello World实现方法示例
2017/08/03 PHP
Yii框架核心组件类实例详解
2019/08/06 PHP
redis+php实现微博(三)微博列表功能详解
2019/09/23 PHP
解决laravel5.4下的group by报错的问题
2019/10/16 PHP
js模仿windows桌面图标排列算法具体实现(附图)
2013/06/16 Javascript
js给onclick赋值传参数的两种方法
2013/11/25 Javascript
浅谈JavaScript中定义变量时有无var声明的区别
2014/08/18 Javascript
理解javascript中的回调函数(callback)
2014/09/02 Javascript
jQuery ajax serialize() 方法使用示例
2014/11/02 Javascript
jQuery实现的多屏图像图层切换效果实例
2015/05/07 Javascript
js实现不提交表单获取单选按钮值的方法
2015/08/21 Javascript
QRCode.js:基于JQuery的生成二维码JS库的使用
2017/06/23 jQuery
JavaScript实现图片拖曳效果
2017/09/08 Javascript
jQuery+CSS实现的标签页效果示例【测试可用】
2018/08/14 jQuery
微信小程序封装分享与分销功能过程解析
2019/08/13 Javascript
vue绑定数字类型 value为数字的实例
2020/08/31 Javascript
为Python的web框架编写前端模版的教程
2015/04/30 Python
python遍历数组的方法小结
2015/04/30 Python
Python实现手写一个类似django的web框架示例
2018/07/20 Python
详解Django项目中模板标签及模板的继承与引用(网站中快速布置广告)
2019/03/27 Python
python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法
2019/06/26 Python
python Autopep8实现按PEP8风格自动排版Python代码
2021/03/02 Python
Charlotte Tilbury英国官网:英国彩妆品牌
2017/05/26 全球购物
Vita Fede官网:在意大利手工制作,在纽约市设计
2019/10/25 全球购物
法国春天百货官网:Printemps.com
2020/06/29 全球购物
学习心得体会
2014/01/01 职场文书
便利店投资创业计划书
2014/02/08 职场文书
产品质量承诺书范文
2014/03/27 职场文书
团队经理竞聘书
2014/03/31 职场文书
初中三好学生自我鉴定
2014/04/07 职场文书
导游词之凤凰古城
2019/10/22 职场文书
php TP5框架生成二维码链接
2021/04/01 PHP
Spring Boot 使用 Spring-Retry 进行重试框架
2022/04/24 Java/Android