Python 文件的操作
新建
# ==================新建==================
# 新建文件夹,若倒数第二层文件夹不存在则会报错
os.mkdir(r"/home/python")
# 递归新建目录,若文件夹存在则报错
os.makedirs(r"C:UsersMicrosoftDesktopaaa66?7")
# ======================================
复制
# ==================复制==================
# 复制文件,不能复制文件夹
shutil.copyfile(r"D:pythonpy1.txt", r"D:pythonpy2.txt")
# 复制文件,与copyfile不同的是,第二个可以参数可以使用文件夹路径
shutil.copy(r"D:pythonpy1.txt", r"D:pythonpy2")
# shutil.copy只复制文件内容,copy2还复制了创建时间、修改时间等信息,
shutil.copy2(r"D:pythonpy1.txt", r"D:pythonpy2")
# 复制整个文件夹,若目标目录已存在,则会报错
shutil.copytree(r"D:pythonpy1", r"D:pythonpy3py1")
# ======================================
删除
# ==================删除==================
# 只能删除文件,若为目录则报错
# 若文件正在使用,Windows下会直接报错,Linux下会在目录表中删除记录,但文件还在
# 与os.unlink()一样的作用
os.remove(r"C:UsersMicrosoftDesktopI.exe")
# 删除目录,目录必须为空,否则报错OSError
os.rmdir(r"C:UsersMicrosoftDesktopaaa")
# 递归删除空目录
os.removedirs(r"C:UsersMicrosoftDesktop")
# 删除整个目录(不管此目录下有多少目录和文件)
shutil.rmtree(r"C:UsersMicrosoftDesktopaaa")
# ======================================
移动
# ==================移动====================
# 移动文件或文件夹,可使用目录树形式
shutil.move(r"D:pythonpy1", r"D:pythonpy3py2")
# ========================================
重命名
# ==================重命名==================
# 重命名文件或目录,但不能这样:rename("/aaa/a.txt","/bbb/a.txt"),也不能同时重命名目录和文件
os.rename(r"C:UsersMicrosoftDesktopaaa",r"C:UsersMicrosoftDesktopbb")
# 重命名目录或文件
# 若同时重命名路径和文件,则会新建路径并将文件重命名后移动到新目录
# 如:os.renames("/aaa/b.txt","/bbb/c.txt"),则会在aaa同级目录新建bbb目录,并将b.txt重命名为c.txt后移动到bbb目录
os.renames(r"C:UsersMicrosoftDesktopaaa",r"C:UsersMicrosoftDesktopaaaS")
# =======================================
路径相关
# ==================路径相关==================
# 获取文件的完整路径
os.path.abspath(r"script.py")
# 获取完整路径中的文件名,以下返回script.py,等价于os.path.split(path)[1]
os.path.basename(r"/home/python/script.py")
# 获取文件的绝对路径,参数也必须是全路径,另:即使文件不存在也会正常返回,等价于os.path.split(path)[0]
os.path.dirname(r"/home/python/script.py")
# 获取文件的文件名和扩展名,以下返回:('script', '.py')
os.path.splitext(r"script.py")
# 获取脚本运行目录
os.getcwd()
# 获取目录下文件列表,参数为空则为脚本运行目录,返回格式:['1.py','2.py']
os.listdir(r"/home/python")
# 判断文件或路径是否存在
os.path.exists(r"/home/python")
# 判断目标是文件还是路径
os.path.isdir(r"/home/python")
os.path.isfile(r"/home/python")
# =========================================
遍历目录
两种方式:
1、os.walk
os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])
参数1:要遍历的目录
参数2:默认True为广度遍历,False为深度遍历
参数3:可空,callable 对象,当 walk 异常时,会调用
参数4:可空,如果为 True,则会遍历目录下的快捷方式(linux 下是 symbolic link)实际所指的目录(默认关闭)
import os
list_dirs = os.walk(rootDir)
for root, dirs, files in list_dirs:
# root 所指的是当前正在遍历的这个文件夹的本身的地址
# dirs 是一个list,内容是该文件夹中所有的目录的名字(不包括子目录)
# files 同样是list , 内容是该文件夹中所有的文件(不包括子目录)
print("======")
for d in dirs:
# 只输出遍历文件夹名
print(os.path.join(root, d))
for f in files:
# 只输出遍历的文件名
print(os.path.join(root, f))
2、os.listdir递归
os.listdir(path)
参数1:目录
返回path目录下的文件夹名和文件名,并按字母顺序排列
def Recursion(rootDir):
for lists in os.listdir(rootDir):
path = os.path.join(rootDir, lists)
# 输出文件名或文件夹名
print(path)
# 判断是否为文件夹,如果是,则递归遍历
# 如果不是则为文件,可执行具体逻辑
if os.path.isdir(path):
Recursion(path)
else:
pass
Python 文件的操作的更多相关文章
- python文件相关操作
Python文件相关操作 打开文件 打开文件,采用open方法,会将文件的句柄返回,如下: f = open('test_file.txt','r',encoding='utf-8') 在上面的代码中 ...
- Python文件基础操作(IO入门1)
转载请标明出处: http://www.cnblogs.com/why168888/p/6422270.html 本文出自:[Edwin博客园] Python文件基础操作(IO入门1) 1. pyth ...
- python文件高级操作
python文件高级操作和注意事项等等 文件过大保护 由于read是一次性读取文件所有的内容,如果文件100G,内存就会吃不消,所以推荐使用read(size)一次读取指定字节/字符(根据rb,或者r ...
- python 文件读写操作(24)
以前的代码都是直接将数据输出到控制台,实际上我们也可以通过读/写文件的方式读取/输出到磁盘文件中,文件读写简称I/O操作.文件I/O操作一共分为四部分:打开(open)/读取(read)/写入(wri ...
- Python 文件常见操作
# -*-coding:utf8 -*- ''''' Python常见文件操作示例 os.path 模块中的路径名访问函数 分隔 basename() 去掉目录路径, 返回文件名 dirname() ...
- python 文件 IO 操作
Python 的底层操作 * 其实Python的文件IO操作方法,和Linux底层的差不多 打开 f = open(filename , "r") 后面的 "r" ...
- python文件的操作
文件的操作,归根结底就只有两种:打开文件.操作文件 一.打开文件:文件句柄 = open('文件路径', '模式') python中打开文件有两种方式,即:open(...) 和 file(...) ...
- ~~Python文件简单操作~~
进击のpython Python文件操作 在说Python的文件操作之前 我们可以先思考一个问题 平时我们是怎么对电脑中的文件进行操作的呢? 打开电脑⇨找到文件⇨打开文件⇨读文件⇨修改文件⇨保存文件⇨ ...
- Python 文件读写操作实例详解
Python提供了必要的函数和方法进行默认情况下的文件基本操作.你可以用file对象做大部分的文件操作 一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前 ...
- 12、python文件的操作
前言:本文主要介绍python中文件的操作,包括打开文件.读取文件.写入文件.关闭文件以及上下文管理器. 一.打开文件 Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处 ...
随机推荐
- bzoj 2806 [Ctsc2012]Cheat——广义后缀自动机+单调队列优化DP
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2806 只想着怎么用后缀数据结构做,其实应该考虑结合其他算法. 可以二分那个长度 L .设当前 ...
- JMeter - Perfmon - ServerAgent
−Table of Contents 1 - Installation 2 - Usage and commands 2.1 - PerfMon Metrics Collector Listener ...
- Typescript学习总结之泛型
泛型: 参数化的类型,一般用来限制结合的内容 class Student { constructor(public name: string) { } say() { console.log(this ...
- 进程锁 Lock
进程锁其实是锁的输入终端,屏幕,太多的进程,为了防止打印错乱而锁,作用不大 from multiprocessing import Process, Lock def f(l, i): l.acqui ...
- centos绑定多个域名
正在使用aliyun主机,运行centos6.4 64位系统,安装lamp环境后进行域名绑定.配置文件如下: <VirtualHost *:80> DocumentRoot /var/ww ...
- VS正则msdn地址
https://msdn.microsoft.com/zh-cn/library/2k3te2cs(v=vs.100).aspx 备查.vs里正则有很多特殊的规则.
- 【linux】常用命令-端口
端口操作 手动更改配置文件开放端口 vim /etc/sysconfig/iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 81 ...
- 发现TCP的一种错误----客户端连接失败(10055错误号)
在客户端连接7302TCP端口失败,关闭程序,启动sockettool也不行,出现错误号为 10055(发现队列满了或者空间不足).通过查网上资料,发现有两个方法:设置 ( TcpTimedWaitD ...
- 学习笔记之Data Science
Data science - Wikipedia https://en.wikipedia.org/wiki/Data_science Data science, also known as data ...
- 安装sublime txt3 并且设置为默认的text打开方式
1.安装 安装可以参考 http://jingyan.baidu.com/article/fa4125acb8569b28ac7092ea.html 1.添加sublime text 3的仓库: su ...