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 # ...
随机推荐
- http与tcp,udp的区别
1.网络协议的概念 (1)在学习网络课程的时候,老师会讲iso七层模型,有应用层 表示层 会话层 传输层 网络层 数据链路层 物理层,其中http就属于应用层,tcp与udp是属于传输层,如图1.1( ...
- [Powershell]导出指定的定时计划任务
<# .NOTES =========================================================================== Created wit ...
- SpringBoot第十八篇:异步任务
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/11095891.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言 系统中的异 ...
- nginx服务器图片防盗链的方法
nginx服务器图片防盗链的方法<pre> location ~* \.(gif|jpg|png|jpeg)$ { expires 30d; valid_referers *.shuche ...
- windowserver -------- 修改服务器防火墙
再服务器中安装好软件的时候,我们通过别的电脑来访问服务器中的软件的时候,会出现访问不了的情况,这是可能是因为服务器中的防火墙中的进站端口,没有开放,一般软件进行部署的时候会开放801到 810 之间的 ...
- AtomicReference示例
对引用类型的原子性操作 /** * *对引用变量的原子操作 note: *在java中对引用类型的变量,赋值是原子性的,为什么还要有atomicReference,假如要对一个引用类型进行比较,设置等 ...
- maven打包产生可执行jar包
http://blog.csdn.net/u014695188/article/details/53128095 https://blog.csdn.net/fuck487/article/detai ...
- Java中转换为十六进制的几种实现
public class HexUtil { private static final String[] DIGITS_UPPER = {"0", "1", & ...
- 创建Maven项目时,GroupId和Artifact Id该怎么填写呢?
1.什么是groupid和artifactId? groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根 ...
- aspect原理分析
人的记忆能力是有限的,分析.建模与解释能力是无限的 Call Hierarchy isa hook aspect_hookClass() aspect_prepareClassAndHookSelec ...