每天写一点,总有一天我这条咸鱼能变得更咸

python 中对文件及目录的操作基本依赖与os,shutil模块,其中以os模块为主,最主要的几个方法实例如下:

1.判断文件/目录是否存在(os.path.exists(filename)),实例如下:

  

文件存在则返回True,不存在则返回False

2.获取当前文件路径(os.getcwd()),实例如下:

3.删除文件(os.remove()),实例如下:

删除文件需确保文件确实存在

4.修改文件/目录名(os.rename()),实例如下:

修改文件名需要确定文件存在

5.遍历目录下的所有文件(os.walk),实例如下:

 #!/usr/bin/env python
# -*- coding: utf-8 -*-
import os for dirs,paths,names in os.walk(os.getcwd()):
for path in paths:
print path for name in names:
print os.path.join(dirs,path,name)

输出如下:

 .idea
D:\test_his\.idea\a.txt
D:\test_his\.idea\b.txt
D:\test_his\.idea\main.py
D:\test_his\.idea\scrpy.py
D:\test_his\.idea\test.py
D:\test_his\.idea\test1.py
inspectionProfiles
D:\test_his\.idea\inspectionProfiles\encodings.xml
D:\test_his\.idea\inspectionProfiles\misc.xml
D:\test_his\.idea\inspectionProfiles\modules.xml
D:\test_his\.idea\inspectionProfiles\test_his.iml
D:\test_his\.idea\inspectionProfiles\workspace.xml
D:\test_his\.idea\inspectionProfiles\inspectionProfiles\profiles_settings.xml

 其余方法和函数简介如下:

名称 作用 备注
os.listdir(filedir) 返回指定目录下的所有文件名和目录名 目录存在
os.removedirs(r'filedir') 删除多个目录 目录存在
os.path.getsize(filename) 获取文件大小  
os.path.splitext(filename) 分离后缀名 分离最后一个.符号后面的前后内容
os.path.isfile() 判断是否为文件  
os.path.isdir() 判断是否为目录  
os.path.split() 分离文件目录和文件名  
os.path.dirname() 获取路径名  
os.path.islink() 是否存在链接  
os.mkdir() 创建目录  
os.makedirs() 创建多个目录  
os.chmod() 修改权限  
os.stat 获取文件属性  
shutil.copyfile() 拷贝文件  
shutil.copy(file,path) 拷贝文件到目录  
shutil.copytree(path,newpath) 拷贝整个目录  
shutil.move() 移动文件或者目录  
shutil.rmtree(dir) 删除目录  

python 操作目录的更多相关文章

  1. Python操作文件和目录

    Python操作文件和目录 读写文件比较简单,有一点特别注意就好了 windows下Python默认打开的文件以gbk解码,而一般我们的文件是utf-8编码的,所以如果文本含有中文,就会出现异常或者乱 ...

  2. python操作数据库

    一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...

  3. Python操作Redis、Memcache、RabbitMQ、SQLAlchemy

    Python操作 Redis.Memcache.RabbitMQ.SQLAlchemy redis介绍:redis是一个开源的,先进的KEY-VALUE存储,它通常被称为数据结构服务器,因为键可以包含 ...

  4. Python获取目录、文件的注意事项

    Python获取指定路径下的子目录和文件有两种方法: os.listdir(dir)和os.walk(dir),前者列出dir目录下的所有直接子目录和文件的名称(均不包含完整路径),如 >> ...

  5. Python操作文件、文件夹、字符串

    Python 字符串操作 去空格及特殊符号 s.strip().lstrip().rstrip(',') 复制字符串 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sSt ...

  6. python运维开发(十一)----python操作缓存memcache、redis

    内容目录: 缓存 memcache redis memcache Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数 ...

  7. python模块目录文件后续

    1,新增PythonModule加载path Ruiy tip(关于python list[]数据库类型特殊你懂的!append(""),extend([""] ...

  8. Python 之路:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy

    一.Memcached Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负债.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速 ...

  9. Python操作Zip文件

    Python操作Zip文件 需要使用到zipfile模块 读取Zip文件 随便一个zip文件,我这里用了bb.zip,就是一个文件夹bb,里面有个文件aa.txt. import zipfile # ...

随机推荐

  1. withDefaultPasswordEncoder() 过时弃用问题

    在学springsecurity5.X时,在demo里,内存配置用户的时候,提示withDefaultPasswordEncoder过时,特查看了源码,官方给出的理由是: /** @deprecate ...

  2. Export failed for github.com/hashicorp/consul: Unable to export source: exit status 128

    背景 go项目,使用glide install命令去下载安装依赖,依赖中有个github.com/hashicorp/consul 问题描述 一直无法下载安装依赖成功,报错如下: [ERROR] Ex ...

  3. QSS文件美化界面无效

    问题描述: 同样的qss内容,内置有效,写进qss文件加载无效. 搜寻.........很多网友的经理是qss文件编码和qt文本编辑器的属性........而我怎么尝试,怎么失败. 解决方案: 从fi ...

  4. 论文阅读: Infrastructure-Based Calibration of a Multi-Camera Rig

    Abstract 在线标定很重要. 但是目前的方法都计算量都很高. 我们的方案不需要标定板之类的东西. 我们的方案不需要假设相机有重合的FOV,也不需要任何的初始猜测. 当相机模组行驶穿过之前建过地图 ...

  5. Unity Shader 屏幕后效果——Bloom外发光

    Bloom的原理很简单,主要是提取渲染图像中的亮部区域,并对亮部区域进行模糊处理,再与原始图像混合而成. 一般对亮部进行模糊处理的部分采用高斯模糊,关于高斯模糊,详见之前的另一篇博客: https:/ ...

  6. Music模块

    micro:bit中,MicroPython提供一个Music模块,提供播放音乐的方法,但值得注意的是,控制板上并没有蜂鸣器,所以要外接蜂鸣器,才能听到效果 ,一般接到pin0端口,和gnd地,rob ...

  7. windows远程桌面无法拷贝文件的问题与解决方法

    在开发完往windows服务器上部署系统或者给系统打补丁的时候,都会需要远程桌面的双向拷贝文件功能. 但是有些时候却会发现没有办法拷贝文件,原因主要有两个. 01 远程桌面的剪贴板设置 一个是在远程桌 ...

  8. RDD的转换操作,分三种:单value,双value交互,(k,v)对

    import org.apache.spark.rdd.RDDimport org.apache.spark.{Partitioner, SparkConf, SparkContext} object ...

  9. MonkeyDev安装--逆向开发

    MonkeyDev是原有iOS OpenDev的升级,非越狱插件的开发集成神器! 可以使用Xcode开发CaptainHook Tweak.Logos Tweak 和 Command-line Too ...

  10. golang学习笔记 ---rand

    在Golang中,有两个包提供了rand,分别为 "math/rand" 和 "crypto/rand",  对应两种应用场景. "math/rand ...