| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> python文件或文件夹操作 -> 正文阅读 |
|
[Python知识库]python文件或文件夹操作 |
python文件或文件夹操作Python 操作文件时,我们一般要先判断指定的文件或目录是否存在,不然容易产生异常。 os模块提供了一种使用与操作系统相关的功能。os.path 模块操作文件路径。【其官方文档,可见如下两部分 os --- 多种操作系统接口 — Python 3.10.3 文档 os.path --- 常用路径操作 — Python 3.10.3 文档 例子Python os.path() 模块 | 菜鸟教程?】要使用os标准模块,用import os语句引入之。 shutil 模块提供了一系列对文件和文件集合的高阶操作。 特别是提供了一些支持文件拷贝和删除的函数。【其官方文档shutil --- 高阶文件操作 — Python 3.10.3 文档?】要使用shutil 模块先用import shutil引入 fileinput模块(module)实现了一个辅助类和一些函数用来快速编写访问标准输入或文件列表的循环。【其官方文档fileinput --- 迭代来自多个输入流的行 — Python 3.10.3 文档?】要使用fileinput 模块先用import fileinput引入 tempfile模块用于创建临时文件和目录【其官方文档tempfile --- 生成临时文件和目录 — Python 3.10.3 文档 】要使用tempfile 模块先用import tempfile引入。 这些都是Python自带的标准模块, Python 安装时同时就附带自动安装了,不需象使用第三方模块那样,需要先用pip程序单独安装之,才可以用。 用import os语句后,可以使用下列函数 os.name # nt 表示Windows 系统;'posix’表示Linux系统 os.sep ?#输出当前操作系统的路径分隔符;windos 展示 “\” 或 “\”;linux ”/“ os.linesep??#输出当前操作系统的换行符 os.pathsep ?#输出分割文件路径的分隔符 os.environ ?#获取系统环境变量 os.listdir(path) ?# 列出该路径下所有的文件夹 os.mkdir(path) #创建一个目录 os.rmkdir(path) #删除一个空目录 os.rename(‘src’,‘dst’) # 更改文件或目录名,将src 重命名为 dst os.getcwd() ?# 获取当前的工作目录 os.chdir(path) # 改变当前脚本目录,到指定目录 os.open()?# 读写一个文件,其官方文档 https://docs.python.org/zh-cn/3/library/functions.html#open os.path.exists(path)??#如果path存在则返回true,否则返回false os.path.isabs(path) #如果path是绝对路径则返回true os.path.isfile(path) #如果path是一个存在的文件返回true,否则返回false os.path.isdir(path) #如果path是一个存在的目录则返回true,否则返回false os.path.split(path) #将path分割成目录和文件名二元组返回 os.path.splitext(path)?#分割路径,返回路径名和文件扩展名的元组 例1、判断文件是否存在 例2、分割路径,返回路径名和文件扩展名 用import shutil?语句后,可以使用下列函数 shutil.rmtree(path) ?????# 删除一个完整的目录树——文件夹及其下所有文件 shutil.copyfile("old","new") # 复制文件,只能是文件 shutil.copytree("old","new") # 复制目录,只能是目录,且new必须不存在 shutil.copy("old","new") # 复制文件/文件夹,复制 old 为 new shutil.move("old","new") ? # 移动文件/文件夹至 new 文件夹中 用import fileinput?语句后,可以使用下列函数 input() ???#模块的主要方法,返回能够用于for循环遍历的对象,该对象可迭代 fileinput.filename() #返回当前正在读取的文件名,如果第一行被读取之前调用将返回None fileinput.fileno() ????#返回当前文件的文件描述符(1个整数),没有文件被打开(第一行之前或文件之间的时刻)将返回-1 fileinput.lineno() ??#返回当前已经累加读取的行的数量(或者序号) fileinput.filelineno() ??#返回当前读取的行的行号,第一行读取之前返回0,最后文件的最后行被读取之后调用,将返回最后一行所在文件的行号 fileinput.isfirstline() ??#检查当前行是否是所在文件的第一行,如果是则返回True,否则False fileinput.isstdin() ??#如果上一行是从sys.stdin(标准输入)读取的,则返回True,否则False fileinput.nextfile() #关掉当前文件以便从下个文件的第一行开始迭代读取 例、判断是否是第一行: import fileinput 用import ?tempfile 语句后,可以使用下列函数 tempfile.TemporaryFile() tempfile.NamedTemporaryFile() tempfile.SpooledTemporaryFile() tempfile.TemporaryDirectory)_ tempfile.mkstemp() tempfile.mkdtemp() 大量临时数据放在内存中会占用大量资源,可以使用临时文件来进行储存 临时文件不用命名,且使用后会被自动删除 例1、使用 TemporaryFile 创建的临时文件没有文件名,在文件系统中找不到,只能被当前进程访问 例2、使用 NamedTemporaryFile 创建的临时文件有文件名,在文件系统中可以找到,因此可以多个进程同时访问 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/15 19:59:46- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |