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 文件操作的详解及实例
Sep 18 Python
Python中的浮点数原理与运算分析
Oct 12 Python
Python实现pdf文档转txt的方法示例
Jan 19 Python
python实现从本地摄像头和网络摄像头截取图片功能
Jul 11 Python
python将类似json的数据存储到MySQL中的实例
Jul 12 Python
python监控nginx端口和进程状态
Sep 06 Python
python web框架Flask实现图形验证码及验证码的动态刷新实例
Oct 14 Python
python支持多线程的爬虫实例
Dec 21 Python
使用python从三个角度解决josephus问题的方法
Mar 27 Python
Python学习之os模块及用法
Jun 03 Python
如何理解python对象
Jun 21 Python
matplotlib bar()实现多组数据并列柱状图通用简便创建方法
Feb 24 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中的session永不过期的解决思路及实现方法分享
2011/04/20 PHP
php中判断数组是一维,二维,还是多维的解决方法
2013/05/04 PHP
Android ProgressBar进度条和ProgressDialog进度框的展示DEMO
2013/06/19 PHP
php生成二维码
2015/08/10 PHP
PHP实现微信支付(jsapi支付)流程步骤详解
2018/03/15 PHP
PHP+Redis开发的书签案例实战详解
2019/07/09 PHP
使用laravel根据用户类型来显示或隐藏字段
2019/10/17 PHP
JavaScript触发器详解
2007/03/10 Javascript
ext 列表页面关于多行查询的办法
2010/03/25 Javascript
JS的反射问题
2010/04/07 Javascript
js+css使DIV始终居于屏幕中间 左下 左上 右上 右下的代码集合
2011/03/10 Javascript
js实现鼠标悬停图片上时滚动文字说明的方法
2015/02/17 Javascript
浅谈JavaScript的内置对象和浏览器对象
2016/06/03 Javascript
深入理解jQuery3.0的domManip函数
2016/09/01 Javascript
用vue的双向绑定简单实现一个todo-list的示例代码
2017/08/03 Javascript
Vue.js 十五分钟入门图文教程
2018/09/12 Javascript
JS面试题大坑之隐式类型转换实例代码
2018/10/14 Javascript
vue实现前端分页完整代码
2020/06/17 Javascript
[01:00:59]VP VS VG Supermajor小组赛胜者组第二轮 BO3第二场 6.2
2018/06/03 DOTA
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
2008/09/06 Python
TensorFlow平台下Python实现神经网络
2018/03/10 Python
python:接口间数据传递与调用方法
2018/12/17 Python
在Pycharm中执行scrapy命令的方法
2019/01/16 Python
Python参数类型以及常见的坑详解
2019/07/08 Python
调用其他python脚本文件里面的类和方法过程解析
2019/11/15 Python
Python通过递归函数输出嵌套列表元素
2020/10/15 Python
Html5游戏开发之乒乓Ping Pong游戏示例(二)
2013/01/21 HTML / CSS
html5的canvas元素使用方法介绍(画矩形、画折线、圆形)
2014/04/14 HTML / CSS
Myprotein葡萄牙官方网站:英国优质运动营养品牌
2016/09/12 全球购物
Boden美国官网:英伦原创时装品牌
2017/07/03 全球购物
人民调解员培训方案
2014/06/05 职场文书
孝敬父母的活动方案
2014/08/31 职场文书
篮球友谊赛通讯稿
2014/10/10 职场文书
2015年生产车间工作总结
2015/04/22 职场文书
酒店工程部的岗位职责汇总大全
2019/10/23 职场文书
如何给HttpServletRequest增加消息头
2021/06/30 Java/Android