Python对文件和文件路径的管理
1. 使用os.path进行路径和文件管理
1.1 拆分路径
- os.path.split 返回一个二元组,包含文件路径和文件名
- os.path.dirname 返回文件的路径
- os.path.basename 返回文件名
- os.path.splitext 返回文件按拓展名分割的二元组

1.2 构建路径
- os.path.expanduser 展开用户的home目录
- os.path.abspath 获取文件的绝对路径
- os.path.join 根据不同的操作系统平台,使用不同的路径分割符拼接路径
- os.path.isabs 判断是否为绝对路径

1.3 获取文件属性
- os.path.getsize 获取文件大小
- os.path.getatime 获取文件的访问时间
- os.path.getmtime 获取文件的修改时间
- os.path.getctime 获取文件的创建时间

1.4 判断文件类型
- os.path.exists
- os.path.isfile
- os.path.isdir
- os.path.islink
- os.path.ismount

应用案例:
1. 获取指定目录下所有文件列表

2. 获取指定目录下所有文件和大小的字典

2. 利用os模块管理文件和目录
2.1 查看文件或者目录
- os.getcwd() 获取当前目录
- os.listdir() 列出指定目录下文件和目录

2.2 对文件和目录的增删查改
- os.unlink/remove 删除path路径所指的文件
- os.rmdir 删除文件夹,该文件夹必须为空
- os.mkdir 创建一个文件夹
- os.rename 重命名文件或文件夹

2.3 文件的权限
- os.access 判断文件是否有对应的权限
- os.chmod 改变文件的权限

案例:打印出最常用的10条Linux命令

3. 使用高级文件处理接口shutil
对于常见的文件操作,shutil更易用。
3.1 复制文件和文件夹
- shutil.copy
- shutil.copytree

3.2 文件和文件夹的改名和移动
- shutil.move
该函数与Linux中的move作用一模一样

3.3 删除目录
- shutil.rmtree
这个不管文件夹是否为空,都将删除,这个是与os.rmdirde的区别

Python对文件和文件路径的管理的更多相关文章
- python,os操作文件,文件路径(上一级目录)
python获取文件上一级目录:取文件所在目录的上一级目录 os.path.abspath(os.path.join(os.path.dirname('settings.py'),os.path.pa ...
- windows上python上传下载文件到linux服务器指定路径【转】
从windows上传文件到linux,目录下的文件夹自动创建 #!/usr/bin/env python # coding: utf-8 import paramiko import datetime ...
- python 查看文件名和文件路径
查看文件名和文件路径 1 >>> import os 2 >>> url = 'https://images0.cnblogs.com/i/311516/20140 ...
- Python中的相对文件路径的调用
先让我们来看看一个用到相对文件路径的函数调用的问题.假设现在有两个脚本文件main.py和func.py,他们的路径关系是: . |--dir1 |--main.py |--dir2 |--func. ...
- python之获取文件夹下文件的绝对路径
#!/usr/bin/python #-*-conding:utf-8-*- #获取目录下文件的绝对路径 import os def getabsroute(path): listdir = os.l ...
- Python获取当前脚本文件夹(Script)的绝对路径
Python获取当前脚本绝对路径 Python脚本有一个毛病,当使用相对路径时,被另一个不同目录下的py文件中导入时,会报找不到对应文件的问题.感觉是当前工作目录变成了导入py文件当前目录.如果你有配 ...
- python读取文件使用相对路径的方法
场景描述: python传统的读取文件的方法,通过读取文件所在目录来读取文件,这样出现的问题是,如果文件变更了存储路径,那么就会读取失败导致报错 如下方脚本 def stepb(a):#写入txt f ...
- 【python基础语法】模块和包管理,文件的操作(第8天课堂笔记)
''' 模块和包管理 模块和包的定义: 模块:模块是一个Python文件,以.py结尾,包含了Python对象定义和Python语句 包:Python中的包就是一个包含__init__.py文件的目录 ...
- 【Python全栈-HTML】HTML引入文件的绝对路径、相对路径、根目录
HTML引入文件的绝对路径.相对路径.根目录 什么是绝对路径?绝对路径指的是文件的真正路径,使用绝对路径链接外部资源,如:图片.超级链接.flash.音频.视频等等.代码如下: 1.引入网络上的资源: ...
随机推荐
- CentOS执行ping命令报错 name or service not know
在虚拟机上安装的CentOS,但是当执行ping命令的时候,提示name or service not known 解决方法如下: 1. 添加DNS服务器 vi /etc/resolv.conf 1 ...
- 【java开发系列】—— 自定义注解
之前在开发中,就总纳闷,为什么继承接口时,会出现@Override注解,有时候还会提示写注解@SuppressWarnings? 原来这是java特有的特性,注解! 那么什么是注解呢? 注解就是某种注 ...
- String和inputstream互转【转文】
URLConnection urlConn = url.openConnection(); // 打开网站链接s BufferedReader reader = new BufferedReader( ...
- 2013年第四届蓝桥杯C/C++B组省赛题目解析
一. 高斯日记 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期,它表示那一天是高斯出生后 ...
- Java如何监视线程的状态?
在Java编程中,如何监视线程的状态? 以下示例演示如何通过扩展Thread类并使用currentThread.getName()方法来监视线程的状态. package com.yiibai; cla ...
- 使用Maven清理项目
在基于Maven的项目中,很多缓存输出在“target”文件夹中.如果想建立项目部署,必须确保清理所有缓存的输出,从面能够随时获得最新的部署. 要清理项目缓存的输出,发出以下命令: mvn clean ...
- e566. 关闭的时候关闭程序
By default, when the close button on a frame is clicked, nothing happens. This example shows how to ...
- unity------------------------------transform.forward与Vector.forward的区别
在unity3d中有2个forward,一个是vector3.forward和transform.forward,这两个forward其实完全不一样.他们之间的区别主要体现在在不同坐标系时的反映上. ...
- 嵌入式开发之zynq---Zynq PS侧I2C驱动架构
http://blog.chinaunix.net/uid-24148050-id-120532.html http://bbs.csdn.net/topics/390538368?page=1 ht ...
- 异常之交叉编译---arm-vfp-linux-gnu/bin/ld: cgic.o: Relocations in generic ELF (EM: 3)
/opt/arm-2009q1/bin/../lib/gcc/arm-none-linux-gnueabi/4.3.3/../../../../arm-none-linux-gnueabi/bin/l ...