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中itertools模块用法详解
Sep 25 Python
实例讲解Python的函数闭包使用中应注意的问题
Jun 20 Python
django加载本地html的方法
May 27 Python
对Python 语音识别框架详解
Dec 24 Python
scrapy-redis的安装部署步骤讲解
Feb 27 Python
Tensorflow 自定义loss的情况下初始化部分变量方式
Jan 06 Python
导入tensorflow:ImportError: libcublas.so.9.0 报错
Jan 06 Python
python环境下安装opencv库的方法
Mar 05 Python
python批量修改xml属性的实现方式
Mar 05 Python
Python字符串及文本模式方法详解
Sep 10 Python
python爬虫---requests库的用法详解
Sep 28 Python
详解tf.device()指定tensorflow运行的GPU或CPU设备实现
Feb 20 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安全开发库中文详细介绍
2015/03/22 PHP
xml文档转换工具,附图表例子(hta)
2010/11/17 Javascript
遨游,飞飞,IE,空中网 浏览器无提示关闭方法
2011/07/11 Javascript
关于onScroll事件在IE6下每次滚动触发三次bug说明
2011/09/21 Javascript
Js 冒泡事件阻止实现代码
2013/01/27 Javascript
使用jquery实现简单的ajax
2013/07/08 Javascript
当鼠标移动时出现特效的JQuery代码
2013/11/08 Javascript
使用jQuery解决IE与FireFox下createElement方法的差异
2013/11/14 Javascript
详解JS 比较两个Json对象的值是否相等的实例
2013/11/20 Javascript
JS实现的数组全排列输出算法
2015/03/19 Javascript
javascript断点调试心得分享
2016/04/23 Javascript
Bootstrap模态框水平垂直居中与增加拖拽功能
2016/11/09 Javascript
AngularJS自定义服务与fliter的混合使用
2016/11/24 Javascript
jquery获取链接地址和跳转详解(推荐)
2017/08/15 jQuery
Bootstrap框架建立树形菜单(Tree)的实例代码
2017/10/30 Javascript
Vue中 v-if 和v-else-if页面加载出现闪现的问题及解决方法
2018/10/12 Javascript
JavaScript格式化json和xml的方法示例
2019/01/22 Javascript
Python yield 小结和实例
2014/04/25 Python
用Python编写一个国际象棋AI程序
2014/11/28 Python
Python实现处理逆波兰表达式示例
2018/07/30 Python
OpenCV2从摄像头获取帧并写入视频文件的方法
2018/08/03 Python
实例讲解python中的协程
2018/10/08 Python
Python定义函数实现累计求和操作
2020/05/03 Python
Python应用实现处理excel数据过程解析
2020/06/19 Python
canvas实现漂亮的下雨效果的示例
2018/04/18 HTML / CSS
超市优秀员工获奖感言
2014/08/15 职场文书
2014年小学教师工作自我评价
2014/09/22 职场文书
公司股东出资证明书
2014/11/01 职场文书
党员检讨书范文
2014/12/27 职场文书
单位考核聘任报告
2015/03/02 职场文书
劳动保障个人工作总结
2015/03/04 职场文书
学校2015年纠风工作总结
2015/05/15 职场文书
单位同意报考证明
2015/06/17 职场文书
结婚纪念日感言
2015/08/01 职场文书
Golang 正则匹配效率详解
2021/04/25 Golang
教你nginx跳转配置的四种方式
2022/07/07 Servers