新建

# ==================新建==================
# 新建文件夹,若倒数第二层文件夹不存在则会报错
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 文件的操作的更多相关文章

  1. python文件相关操作

    Python文件相关操作 打开文件 打开文件,采用open方法,会将文件的句柄返回,如下: f = open('test_file.txt','r',encoding='utf-8') 在上面的代码中 ...

  2. Python文件基础操作(IO入门1)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6422270.html 本文出自:[Edwin博客园] Python文件基础操作(IO入门1) 1. pyth ...

  3. python文件高级操作

    python文件高级操作和注意事项等等 文件过大保护 由于read是一次性读取文件所有的内容,如果文件100G,内存就会吃不消,所以推荐使用read(size)一次读取指定字节/字符(根据rb,或者r ...

  4. python 文件读写操作(24)

    以前的代码都是直接将数据输出到控制台,实际上我们也可以通过读/写文件的方式读取/输出到磁盘文件中,文件读写简称I/O操作.文件I/O操作一共分为四部分:打开(open)/读取(read)/写入(wri ...

  5. Python 文件常见操作

    # -*-coding:utf8 -*- ''''' Python常见文件操作示例 os.path 模块中的路径名访问函数 分隔 basename() 去掉目录路径, 返回文件名 dirname()  ...

  6. python 文件 IO 操作

    Python 的底层操作 * 其实Python的文件IO操作方法,和Linux底层的差不多 打开 f = open(filename , "r") 后面的 "r" ...

  7. python文件的操作

    文件的操作,归根结底就只有两种:打开文件.操作文件 一.打开文件:文件句柄 = open('文件路径', '模式') python中打开文件有两种方式,即:open(...) 和  file(...) ...

  8. ~~Python文件简单操作~~

    进击のpython Python文件操作 在说Python的文件操作之前 我们可以先思考一个问题 平时我们是怎么对电脑中的文件进行操作的呢? 打开电脑⇨找到文件⇨打开文件⇨读文件⇨修改文件⇨保存文件⇨ ...

  9. Python 文件读写操作实例详解

    Python提供了必要的函数和方法进行默认情况下的文件基本操作.你可以用file对象做大部分的文件操作 一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前 ...

  10. 12、python文件的操作

    前言:本文主要介绍python中文件的操作,包括打开文件.读取文件.写入文件.关闭文件以及上下文管理器. 一.打开文件 Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处 ...

随机推荐

  1. 运行成功的Demo(Python+Appium)

    原文摘自:廖丹  http://www.cnblogs.com/android-it/p/8805659.html 1.打开Appium运行 2.在Pycharm输入代码如下所示: from appi ...

  2. show master status, show slave status中的Executed_Gtid_Set

    slave 如果server是slave节点,在server上执行show master staus与show slave status显示的Executed_Gtid_Set是一样的. slave也 ...

  3. cgred不能自动将pid放入tasks

    问题: cgred不能自动将pid放入tasks cgred / cgrulesengd - does not move new user pid to task file https://serve ...

  4. [转]You Could Become an AI Master Before You Know It. Here’s How.

    转自:https://www.technologyreview.com/s/608921/ai-algorithms-are-starting-to-teach-ai-algorithms/# You ...

  5. WyBox使用shell脚本检测io口是否正常

    1. 修改mt7620a.dts文件,把gpio管脚复用全都定义为通用gpio /dts-v1/; /include/ "mt7620a.dtsi" / { compatible ...

  6. VS2012打开项目——已停止工作

    VS2012打开项目——已停止工作 解决方法如下: 1. 开始-->所有程序-->Microsoft Visual Studio 2012-->Visual Studio Tools ...

  7. PAT 乙级 1047 编程团体赛(20) C++版

    1047. 编程团体赛(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 编程团体赛的规则为:每个参赛队由若 ...

  8. 廖雪峰Java5集合-6Stack-1使用Stack

    1.栈的定义 栈Stack是一种后进先出(LIFO: Last In First Out)的数据结构,可以看作一端封闭的容器,先进去的元素永远在底部,最后出来. 栈有2个重要的方法: push(E e ...

  9. 廖雪峰Java3异常处理-2断言和日志-2使用JDK Logging

    1.日志 为了取代System.out.println() 可以设置输出样式 可以设置输出级别,禁止某些级别输出 可以被重定向到文件 可以按包名控制日志级别 2.JDK内置Logging 在java. ...

  10. php的语法

    常量:不变的量: php 设置常量的方法:define()方法: define("常量名","常量的值",true) 参数三:大小写是否敏感: php中的常量, ...