首页 > 其他分享 >Open函数的应用

Open函数的应用

时间:2024-12-08 09:21:23浏览次数:2  
标签:文件 函数 open 写入 write mode file Open 应用

'''
Open函数的应用:
    open(文件路径以及文件,操作模式,编码格式)
    1.文件路径以及文件:
        一定要包含文件的后缀名
        文件的传递分为相对路径与绝对路径两种:
            绝对路径:(不推荐)
                文件在电脑盘符的实际存在的路径。
                绝对路径表示你在即在本地的文件路径,无法通用。
            相对路径:一般文件都保存在当前工程之中,方便获取。
                类似于linux的路径结构,通过工程路径的结构,实现文件本身的获取。
                ./file_demo.py 表示当前路径下的file_demo.py文件
                ../class06_exception表示上一级路径下的class06_exception路径。
            相对路径的优势在于更优秀的可移植性。方便我们更好地管理代码与工程中的文件内容。
            所有需要使用的文件一般都固定在工程结构中的某些特定文件路径之下。
    2.操作模式:用于定义当前你所获取的文件需要做那种类型的操作。
        r:只读模式,允许文件的内容的读取,不允许编辑修改
        w:写入模式,允许文件的写入操作,但会清空文件原有的内容,以覆盖的形式写入。
        a:追加模式,允许在原有文件内容末尾进行新的内容增加
        b:二进制模式,一般用于对非文本文件进行操作的时候添加(图片,视频等)
    3.编码格式:正确的编码格式可以实现对文件的正常修改和读取,确保文件内容可以正常显示。
文件操作与文件的编辑模式必须统一,否则会出问题。
一般我们在操作文件时,会选择调用try...except...语法结构,因为所有的文件在操作之后都需要关闭 。
如果程序出现异常,则文件很可能处于未关闭状态,从而导致文件损坏。
代码在实际操作过程中,不要认为所有的东西都是现成已经封装好的。很多时候需要通过我们自己去设计逻辑来实现。

'''
# open函数示例
# 绝对路径示例
# file = open(file='D:\Python_Project\HCC_Project\class07_file\mpf.txt',mode='r',encoding='utf-8')

# 相对路径示例
# file = open(file='./mpf.txt',mode='r',encoding="utf-8")
# print(file)

# 读取文件之后的操作行为
# 读取文件内容
# print(file.read())    #获取文件的所有内容,如果文件比较大,读取的速度就会变慢

# 读取一行内容,在程序运行的过程中,每调用一次,都会读取一行。程序运行结束则还原
# print(file.readline())    #读取一行内容

# readlines读取文件的全部内容,每一行表示一个元素,最终产生一个完整的list
# for i in file.readlines():
#     print(i)

# 文件的写入与操作: \n表示回车。程序执行过程中,write会执行后光标继续停留在末尾,等待下次写入
# file = open(file = './mpf.txt',mode='w',encoding='utf-8')
# file.write('这是写入1行文件内容\n')  #write表示文件写入
# file.write('这是写入1行文件内容\n')  #write表示文件写入
# file.write('这是写入1行文件内容\n')  #write表示文件写入
# file.write('这是写入1行文件内容\n')  #write表示文件写入

# file.write('''
# 当编辑器中 仅包含 JSON 文本或 选中了 有效的 JSON 文本。
# 单击鼠标右键,并选择 Json Assistant(或按下快捷键 Alt+K)。
# 接着选择 Json Tree Structure,将弹出一个 JSON 树结构的窗口。
# ''')

# a追加模式:原有内容不会被覆盖,而是直接追加在文件的末尾。
# file = open(file='./mpf.txt', mode='a', encoding='utf-8')
# file.write('这是a模式下追加的内容')
# 对于不存在文件的操作
# file = open(file='./hcc1.txt', mode='r', encoding='utf-8')    # r模式会报错
# file.read()
# file = open(file='./coco.txt', mode='w', encoding='utf-8')  # w模式会生产一个新的文件并写入内容
# file.write('这是w模式新建的文件')
# file = open(file='./hcc2.txt', mode='a', encoding='utf-8')    # a模式也会产生一个新的文件并写入内容。
# file.write('这是一个hcc2文件')


# 操作非文本文件:操作文件时,记得在mode中添加b参数值
# 复制文件
file = open(file='./ddup.png', mode='rb')
# 生成新文件
file_new = open(file='ddup_cp.png', mode='wb')
try:
    content = file.read()
    file_new.write(content) #将原文件的内容写入新文件
except Exception as e:
    print(e)
finally:
    #文件关闭通过close方法实现.启动多个文件,需要逐个调用close关闭
    file.close()
    file_new.close()

 

标签:文件,函数,open,写入,write,mode,file,Open,应用
From: https://www.cnblogs.com/mafei666/p/18593040

相关文章

  • WPS新函数REGEXP 正则表达式
    什么是REGEXP函数?REGEXP函数是WPS表格新增的一个文本处理函数,它允许我们使用正则表达式来匹配、提取和替换文本。这个函数特别适合处理格式不统一的数据、提取特定模式的文本,以及批量处理文本内容。函数语法参数说明:文本:要处理的文本内容正则表达式:用于匹配的模式匹配模式......
  • 光猫拨号,路由器openwrt开启ipv6
    前言https://www.right.com.cn/FORUM/thread-8309440-1-1.htmlhttps://www.cnblogs.com/xiaobawangoo/p/17943829照着做就行了,没有写一遍的必要。注意点教程里面的终端我并没有找到,因此应该自己用ssh工具或者直接命令行连接路由器。sshroot@192.168.31.1设置里面的选项比......
  • 阿里巴巴LangEngine开源了!支撑亿级网关规模的高可用Java原生AI应用开发框架
    LangEngine作为阿里集团内部发起的纯Java版本的AI应用开发框架,经过充分实践,已经广泛应用于包括淘宝、天猫、阿里云、爱橙科技、菜鸟、蚂蚁、飞猪、1688、LAZADA等在内的多个业务场景。此外,LangEngine还支撑了阿里国际AI应用搭建平台的自研与上线,对集团内部的AI平台基础设施产生......
  • 阿里巴巴LangEngine开源了!支撑亿级网关规模的高可用Java原生AI应用开发框架
    LangEngine作为阿里集团内部发起的纯Java版本的AI应用开发框架,经过充分实践,已经广泛应用于包括淘宝、天猫、阿里云、爱橙科技、菜鸟、蚂蚁、飞猪、1688、LAZADA等在内的多个业务场景。此外,LangEngine还支撑了阿里国际AI应用搭建平台的自研与上线,对集团内部的AI平台基础设施产生了......
  • 真题练习25-Word字处理-全国计算机等级考试二级MS Office高级应用与设计考试【汪老师
    视频讲解真题练习25-Word字处理_哔哩哔哩_bilibili题库下载全国计算机等级考试题库下载(用电脑下载安装):请点击题目要求在某学校任教的林涵需要对一篇Word格式的科普文章进行排版,按照如下要求,帮助她完成相关工作。1.打开考生文件夹下的素材文件Word.docx(“.docx”为文件扩展......
  • Solidity极简应用
    01.ERC20目标:发行自己的测试代币;ERC20是什么?ERC20是以太坊上的代币标准,实现了代币转账的基本逻辑:账户余额(balanceOf())转账(transfer())授权转账(transferFrom())授权(approve())代币总供给(totalSupply())授权转账额度(allowance())代币信息(可选)名称(name())......
  • 14.在 Vue 3 中使用 OpenLayers 自定义地图版权信息
    在WebGIS开发中,默认的地图服务通常会带有版权信息,但有时候我们需要根据项目需求自定义版权信息或添加额外的版权声明。在本文中,我们将基于Vue3的CompositionAPI和OpenLayers,完成自定义地图版权信息的实现。最终效果通过本文教程,您将实现以下功能:在地图中自定义版......
  • 神经网络的定义,组成,工作原理及应用
    **神经网络(NeuralNetwork)**是一种受人类大脑启发的计算模型,是深度学习的核心构成。它模仿生物神经元之间的连接,能够通过大量数据的训练完成分类、回归、生成等任务。以下从概念、结构、工作原理和常见类型等方面详细解释神经网络。1.神经网络的定义神经网络是由多个**人工......
  • 【Baum-Welch 算法】10.35初始状态分布π的拉格朗日函数对其求偏导数并令结果为0
    本文是将博文【Baum-Welch算法】中的公式单独拿出来做一个详细的解析。公式(10.35)(10.35)(10.35)是用于......
  • 基本工具(1) openvslam 读取gnss.txt,然后匹配读取图像路径,保存轨迹到txt
     注意跟丢的数据 1添加编译节点CMakeLists.txt #自己改的照片模式add_executable(run_image_slam_mydatarun_image_slam_mydata.ccutil/image_util.cc)list(APPENDEXECUTABLE_TARGETSrun_image_slam_mydata) 2添加依赖文件API_File_IO.h#ifndefMY......