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实现的一只从百度开始不断搜索的小爬虫
Aug 13 Python
python连接字符串的方法小结
Jul 13 Python
python中redis的安装和使用
Dec 04 Python
详解使用python的logging模块在stdout输出的两种方法
May 17 Python
python matplotlib画图实例代码分享
Dec 27 Python
python对日志进行处理的实例代码
Oct 06 Python
python爬虫 模拟登录人人网过程解析
Jul 31 Python
python IDLE添加行号显示教程
Apr 25 Python
Django中的模型类设计及展示示例详解
May 29 Python
python:HDF和CSV存储优劣对比分析
Jun 08 Python
termux中matplotlib无法显示中文问题的解决方法
Jan 11 Python
利用Python将list列表写入文件并读取的方法汇总
Mar 25 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递归调用的小技巧讲解
2013/02/19 PHP
解析PHP自带的进位制之间的转换函数
2013/06/08 PHP
分享一个Laravel好用的Cache宏
2015/03/02 PHP
浅谈php调用python文件
2019/03/29 PHP
如何重写Laravel异常处理类详解
2020/12/20 PHP
IE6背景图片不缓存问题解决方案及图片使用策略多个方法小结
2012/05/14 Javascript
JS实现简单的顶部定时关闭层效果
2014/06/15 Javascript
javascript跨域原因以及解决方案分享
2015/04/08 Javascript
JS实现获取剪贴板内容的方法
2016/06/21 Javascript
基于vue1和vue2获取dom元素的方法
2018/03/17 Javascript
vue实现点击展开点击收起效果
2018/04/27 Javascript
引入外部js脚本加载慢与页面白屏问题的解决
2018/12/10 Javascript
JS实现根据数组对象的某一属性排序操作示例
2019/01/14 Javascript
vue基础之模板和过滤器用法实例分析
2019/03/12 Javascript
Vue混入mixins滚动触底的方法
2019/11/22 Javascript
JavaScript Event Loop相关原理解析
2020/06/10 Javascript
[03:10]2014DOTA2 TI马来劲旅Titan首战告捷目标只是8强
2014/07/10 DOTA
[46:04]Liquid vs VP Supermajor决赛 BO 第四场 6.10
2018/07/05 DOTA
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
Python中分数的相关使用教程
2015/03/30 Python
浅析Python中的join()方法的使用
2015/05/19 Python
在Python中用has_key()方法查找键是否存在的教程
2015/05/21 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
2017/07/24 Python
Window 64位下python3.6.2环境搭建图文教程
2018/09/19 Python
Python的argparse库使用详解
2018/10/09 Python
从0开始的Python学习016异常
2019/04/08 Python
python numpy实现文件存取的示例代码
2019/05/26 Python
Python 列表去重去除空字符的例子
2019/07/20 Python
Pytorch中的variable, tensor与numpy相互转化的方法
2019/10/10 Python
Python中输入和输出(打印)数据实例方法
2019/10/13 Python
eDreams德国:南欧领先的在线旅游公司
2020/12/07 全球购物
荷兰美妆护肤品海淘网站:Beautinow(中文)
2020/11/22 全球购物
旷课检讨书2000字
2014/01/14 职场文书
幼儿园八一建军节活动方案
2014/08/27 职场文书
《鸡兔同笼》教学反思
2016/02/19 职场文书
68行Python代码实现带难度升级的贪吃蛇
2022/01/18 Python