删除

# ==================删除==================

# 只能删除文件,若为目录则报错

# 若文件正在使用,Windows下会直接报错,Linux下会在目录表中删除记录,但文件还在

# 与os.unlink()一样的作用

os.remove(r"C:\Users\Microsoft\Desktop\111.exe")

# 删除目录,目录必须为空,否则报错OSError

os.rmdir(r"C:\Users\Microsoft\Desktop\aaa")

# 递归删除空目录

os.removedirs(r"C:\Users\Microsoft\Desktop\1\2\3")

# 删除整个目录(不管此目录下有多少目录和文件)

shutil.rmtree(r"C:\Users\Microsoft\Desktop\aaa")

# ======================================

新建

# ==================新建==================

# 新建文件夹,若倒数第二层文件夹不存在则会报错

os.mkdir(r"/home/python")

# 递归新建目录,若文件夹存在则报错

os.makedirs(r"C:\Users\Microsoft\Desktop\aaa\666\777")

# ======================================

复制

# ==================复制==================

# 复制文件,不能复制文件夹

shutil.copyfile(r"D:\python\py1\1.txt", r"D:\python\py2\1.txt")

# 复制文件,与copyfile不同的是,第二个可以参数可以使用文件夹路径

shutil.copy(r"D:\python\py1\1.txt", r"D:\python\py2")

# shutil.copy只复制文件内容,copy2还复制了创建时间、修改时间等信息,

shutil.copy2(r"D:\python\py1\1.txt", r"D:\python\py2")

# 复制整个文件夹,若目标目录已存在,则会报错

shutil.copytree(r"D:\python\py1", r"D:\python\py3\py1")

# ======================================

移动

# ==================移动====================

# 移动文件或文件夹,可使用目录树形式

shutil.move(r"D:\python\py1", r"D:\python\py3\py2")

# ========================================

重命名

# ==================重命名==================

# 重命名文件或目录,但不能这样:rename("/aaa/a.txt","/bbb/a.txt"),也不能同时重命名目录和文件

os.rename(r"C:\Users\Microsoft\Desktop\aaa\5",r"C:\Users\Microsoft\Desktop\bbb\6")

# 重命名目录或文件

# 若同时重命名路径和文件,则会新建路径并将文件重命名后移动到新目录

# 如:os.renames("/aaa/b.txt","/bbb/c.txt"),则会在aaa同级目录新建bbb目录,并将b.txt重命名为c.txt后移动到bbb目录

os.renames(r"C:\Users\Microsoft\Desktop\aaa\6",r"C:\Users\Microsoft\Desktop\aaa\123")

# =======================================

路径相关

# ==================路径相关==================

# 获取文件的完整路径

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")

# =========================================

遍历目录

两种方式:

os.walk()

os.listdir() 递归

os.walk

os.walk(top[, topdown=True[, οnerrοr=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))

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

我的博客:花墨世界

公众号:花墨世界

自己建文件111 txt python_这可能是最详细的Python文件操作相关推荐

  1. python写byte数组到文件_这可能是写过最详细的Python文件操作。网友:收藏备用(中篇)...

    很多同学对于编码问题都不是很清楚,计算机常见的编码格式为: ASCII ISO-8859-1 GB2312 GBK UTF-8 UTF-16 对于Python开发中,我们一般都是采用统一的编码格式:U ...

  2. 为什么python文件会闪退_困扰已久的问题--python文件打开方式?为什么打开py文件会闪退!...

    当你安装好python时,你可以在python环境下写语句. python环境有两种方式打开:第一种方式是找到并打开python文件夹中的python.exe:第二种方式是Windows系统在搜索输入 ...

  3. 用pycharm写python_如何利用pyCharm编写和运行python文件

    在安装python环境后,通常可以利用IDE pyCharm来编译我们的python文件.创建一个python文件夹,用pyCharm打开文件夹,在文件夹中新建一个python文件demo.py 也许 ...

  4. 这可能是最详细的Python文件操作!

    https://www.toutiao.com/a6642595087190589956/ 2019-01-04 19:01:29 删除 # ==================删除========= ...

  5. 硬肝!超详细的Python文件操作知识

    来源:南枝向暖北枝寒MA https://blog.csdn.net/mall_lucy/article/details/104547365 [导语]:python进行文件操作,在日常编程中是很常用的 ...

  6. python操作json字符串,超详细的Python文件操作知识

    来自:CSDN,作者:南枝向暖北枝寒MA 链接:https://blog.csdn.net/mall_lucy/article/details/104547365 [导语]:python进行文件操作, ...

  7. python可以处理哪些文件_4招小技巧,带你迅速提升Python文件处理的逼格

    文件这块知识已经讲了好几篇, 第一篇是2个小例子入门 第二篇是文件语法和场景的一个总览 第三篇是一个综合小例子实战一下,可以融合前面所学的知识 这一篇算是收尾吧,回忆我以前写过的python程序,我觉 ...

  8. python文件合法模式组合_以下选项中,不是Python文件二进制打开模式的合法组合是...

    以下选项中,不是Python文件二进制打开模式的合法组合是 答:\"x+\" 建立良好的谈判气氛主要是在( )阶段 答:开局 the ruling class had long b ...

  9. cmd无法运行python_通过Java-%1在cmd中运行python文件不是有效的Win32应用程序 - java...

    我正在尝试使用Java执行python代码.我的代码: public class PyTest { public static void main(String[] args) { Runtime.g ...

最新文章

  1. 使用Hexo在Github搭建静态博客
  2. thunderbird怎样方便的导入gmail联系人
  3. 操作系统之进程管理:5、处理机调度
  4. 山东自考c语言程序设计停考了吗,山东自考教育类停考专业遗留问题的通知
  5. 我在公司用Jmeter刚压一天就崩了,请求、响应数据都为空?就问你慌不慌
  6. 【javascript】关于react的Virtual DOM 与数据更新
  7. HDU1873 看病要排队【模拟+优先队列】
  8. android卡机字符串,Android调用replace方法正则表达式卡死
  9. 这7款文本编辑器,程序员都应该知道
  10. kpw4换壁纸_发挥全部潜能,Kindle越狱指南
  11. c语言程序设计流程图案例
  12. 恢复希捷硬盘丢失数据的方法
  13. 三菱q系列plc 和电脑socket_三菱Q系列和WinCC以太网通讯的组态步骤
  14. Android Studio Cannot resolve symbol 解决方法
  15. Excel/Word 插入图表 InvokeMember设置图表类型
  16. python坦克大战
  17. thinkadmin 内置小程序授权获取openid和生成小程序二维码的使用
  18. Python数据类型—数值型
  19. display lldp neighbor brief
  20. fest556_支持键盘映射的FEST-Swing 1.2rc

热门文章

  1. 超过resnet的图片分类网络
  2. 关于语音文字的互转识别的猜想
  3. 跳出数据计算拯救人工智能之自然法则
  4. 开源APM监控Pinpoint的快速部署和使用
  5. XamarinForms教程构建XamarinForms开发环境
  6. jsp页面之间跳转的数据传递
  7. 目标跟踪之camshift---opencv中meanshift和camshift例子的应用
  8. 艾伟_转载:string类与StringBuilder类性能比较
  9. Map Join介绍及案例
  10. Quantile Regression,python