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的Django框架使用入门指引
Apr 15 Python
Windows上使用virtualenv搭建Python+Flask开发环境
Jun 07 Python
简单谈谈python中的多进程
Nov 06 Python
Python自动化运维_文件内容差异对比分析
Dec 13 Python
python执行系统命令后获取返回值的几种方式集合
May 12 Python
Python基于SMTP协议实现发送邮件功能详解
Aug 14 Python
numpy向空的二维数组中添加元素的方法
Nov 01 Python
python制作mysql数据迁移脚本
Jan 01 Python
Python数据类型之Dict字典实例详解
May 07 Python
Python 批量刷博客园访问量脚本过程解析
Aug 30 Python
python绘制BA无标度网络示例代码
Nov 21 Python
django配置app中的静态文件步骤
Mar 27 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.NET的入门教程
2006/10/09 PHP
提高php运行速度的一些小技巧分享
2012/07/03 PHP
php上传图片存入数据库示例分享
2014/03/11 PHP
PHP Imagick完美实现图片裁切、生成缩略图、添加水印
2016/02/22 PHP
浅谈php中的访问修饰符private、protected、public的作用范围
2016/11/20 PHP
yii2.0框架使用 beforeAction 防非法登陆的方法分析
2019/09/11 PHP
javascript 强制刷新页面的实现代码
2009/12/13 Javascript
javascript 运算数的求值顺序
2011/08/23 Javascript
Javascript生成json的函数代码(可以用php的json_decode解码)
2012/06/11 Javascript
window.open关于浏览器拦截问题分析及解决方法
2013/02/05 Javascript
Javascript中常见的校验如域名、手机、邮箱等等
2014/01/02 Javascript
使用Node.js实现HTTP 206内容分片的教程
2015/06/23 Javascript
基于jQuery实现放大镜特效
2020/10/19 Javascript
谈谈Vue.js——vue-resource全攻略
2017/01/16 Javascript
原生JavaScript实现remove()和recover()功能示例
2018/07/24 Javascript
JS中使用react-tooltip插件实现鼠标悬浮显示框
2019/05/15 Javascript
解决Vue的项目使用Element ui 走马灯无法实现的问题
2020/08/03 Javascript
[38:44]DOTA2上海特级锦标赛A组小组赛#2 Secret VS CDEC第二局
2016/02/25 DOTA
Python使用sftp实现上传和下载功能(实例代码)
2017/03/14 Python
在Python中如何传递任意数量的实参的示例代码
2019/03/21 Python
Python基础知识点 初识Python.md
2019/05/14 Python
Python实现获取当前目录下文件名代码详解
2020/03/10 Python
python自动化办公操作PPT的实现
2021/02/05 Python
印度领先的在线时尚商店:Koovs
2016/08/28 全球购物
世界汽车零件:World Car Parts
2019/09/04 全球购物
super()与this()的区别
2016/01/17 面试题
《夸父追日》教学反思
2014/02/26 职场文书
学校文明单位申报材料
2014/05/06 职场文书
党员批评与自我批评材料
2014/10/14 职场文书
教师节倡议书2015
2015/04/27 职场文书
英文投诉信格式
2015/07/03 职场文书
交通安全温馨提示语
2015/07/14 职场文书
反邪教学习心得体会
2016/01/15 职场文书
解决Python中的modf()函数取小数部分不准确问题
2021/05/28 Python
CentOS8.4安装Redis6.2.6的详细过程
2021/11/20 Redis
Linux系统下MySQL配置主从分离的步骤
2022/03/21 MySQL