python 操作目录
每天写一点,总有一天我这条咸鱼能变得更咸
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 操作目录的更多相关文章
- Python操作文件和目录
Python操作文件和目录 读写文件比较简单,有一点特别注意就好了 windows下Python默认打开的文件以gbk解码,而一般我们的文件是utf-8编码的,所以如果文本含有中文,就会出现异常或者乱 ...
- python操作数据库
一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...
- Python操作Redis、Memcache、RabbitMQ、SQLAlchemy
Python操作 Redis.Memcache.RabbitMQ.SQLAlchemy redis介绍:redis是一个开源的,先进的KEY-VALUE存储,它通常被称为数据结构服务器,因为键可以包含 ...
- Python获取目录、文件的注意事项
Python获取指定路径下的子目录和文件有两种方法: os.listdir(dir)和os.walk(dir),前者列出dir目录下的所有直接子目录和文件的名称(均不包含完整路径),如 >> ...
- Python操作文件、文件夹、字符串
Python 字符串操作 去空格及特殊符号 s.strip().lstrip().rstrip(',') 复制字符串 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sSt ...
- python运维开发(十一)----python操作缓存memcache、redis
内容目录: 缓存 memcache redis memcache Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数 ...
- python模块目录文件后续
1,新增PythonModule加载path Ruiy tip(关于python list[]数据库类型特殊你懂的!append(""),extend([""] ...
- Python 之路:Python操作 RabbitMQ、Redis、Memcache、SQLAlchemy
一.Memcached Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负债.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速 ...
- Python操作Zip文件
Python操作Zip文件 需要使用到zipfile模块 读取Zip文件 随便一个zip文件,我这里用了bb.zip,就是一个文件夹bb,里面有个文件aa.txt. import zipfile # ...
随机推荐
- withDefaultPasswordEncoder() 过时弃用问题
在学springsecurity5.X时,在demo里,内存配置用户的时候,提示withDefaultPasswordEncoder过时,特查看了源码,官方给出的理由是: /** @deprecate ...
- Export failed for github.com/hashicorp/consul: Unable to export source: exit status 128
背景 go项目,使用glide install命令去下载安装依赖,依赖中有个github.com/hashicorp/consul 问题描述 一直无法下载安装依赖成功,报错如下: [ERROR] Ex ...
- QSS文件美化界面无效
问题描述: 同样的qss内容,内置有效,写进qss文件加载无效. 搜寻.........很多网友的经理是qss文件编码和qt文本编辑器的属性........而我怎么尝试,怎么失败. 解决方案: 从fi ...
- 论文阅读: Infrastructure-Based Calibration of a Multi-Camera Rig
Abstract 在线标定很重要. 但是目前的方法都计算量都很高. 我们的方案不需要标定板之类的东西. 我们的方案不需要假设相机有重合的FOV,也不需要任何的初始猜测. 当相机模组行驶穿过之前建过地图 ...
- Unity Shader 屏幕后效果——Bloom外发光
Bloom的原理很简单,主要是提取渲染图像中的亮部区域,并对亮部区域进行模糊处理,再与原始图像混合而成. 一般对亮部进行模糊处理的部分采用高斯模糊,关于高斯模糊,详见之前的另一篇博客: https:/ ...
- Music模块
micro:bit中,MicroPython提供一个Music模块,提供播放音乐的方法,但值得注意的是,控制板上并没有蜂鸣器,所以要外接蜂鸣器,才能听到效果 ,一般接到pin0端口,和gnd地,rob ...
- windows远程桌面无法拷贝文件的问题与解决方法
在开发完往windows服务器上部署系统或者给系统打补丁的时候,都会需要远程桌面的双向拷贝文件功能. 但是有些时候却会发现没有办法拷贝文件,原因主要有两个. 01 远程桌面的剪贴板设置 一个是在远程桌 ...
- RDD的转换操作,分三种:单value,双value交互,(k,v)对
import org.apache.spark.rdd.RDDimport org.apache.spark.{Partitioner, SparkConf, SparkContext} object ...
- MonkeyDev安装--逆向开发
MonkeyDev是原有iOS OpenDev的升级,非越狱插件的开发集成神器! 可以使用Xcode开发CaptainHook Tweak.Logos Tweak 和 Command-line Too ...
- golang学习笔记 ---rand
在Golang中,有两个包提供了rand,分别为 "math/rand" 和 "crypto/rand", 对应两种应用场景. "math/rand ...