Python入门学习篇(十四)——模块文件操作

1 模块

1.1 理解

包: python中带有__init__.py文件的文件夹
模块: 文件名(不包含.py后缀),如python官方的time.py中time就是模块

1.2 示例代码

import datetime# 调用datetime模块中的datetime类的now()方法
t = datetime.datetime.now()
# 格式化输出日期和时间 strftime("想要保存的格式")print("当前系统时间为: ", t.strftime("%Y-%m-%d %H:%M:%S"))

1.3 运行截图

在这里插入图片描述

2 文件操作

2.0 前提-打开文件

2.0.1 语法

open("文件的路径",mode[方式],encoding="编码格式")
# 文件的路径可以是相对路径,也可以是绝对路径(绝对路径就是带盘符的路径)
# mode 对应的格式如下所示:①常规: 文本文件r 仅读w 仅写(覆盖前面写的内容)a 追加(在之前的内容后面)r+ w+ a+ 读写②专门处理二进制文件(IO流、图片流)rb 读取wb 覆盖写ab 追加写
# encoding 编码格式我们通常把其设置为 utf-8

2.1 文件读取

2.1.1 读取全部

a 思路
第一步: 打开文件
第二步: 使用read方法进行读取
第三步  打印读取的内容
第四步  关闭打开的文件
b 示例代码
# 注意: 使用绝对路径时,需要两个\,一个\是不行的
file=open("D:\\python_studyWorkspace\\Study\\day07\\03 文件操作\\home.txt", mode="r", encoding="utf-8")
msg=file.read()
print(msg)
file.close()  #关闭文件
c 运行截图

在这里插入图片描述

2.1.2 逐行读取

a 思路
第一步: 打开文件
第二步: 使用readlines方法进行读取
第三步  for循环打印读取的内容
第四步  关闭打开的文件
b 示例代码
# 注意: 使用绝对路径时,需要两个\,一个\是不行的
file = open("D:\\python_studyWorkspace\\Study\\day07\\03 文件操作\\home.txt", mode="r", encoding="utf-8")
# readlines 读取出来的数据以行为单位存储到列表中, 这个时候想要打印全部内容,可以考虑使用for循环
msg = file.readlines()
print(msg)
for i in msg:# 使用end=""的理由: print自带换行,而文件读取时也会把每行的换行符存储进去,因此需要把print的默认的换行给去掉print(i, end="")
file.close()
c 运行截图

在这里插入图片描述

2.2 文件写入

2.2.1 覆盖写入

a 思路
第一步: 打开文件(mode为w)
第二步: 使用write方法进行读取
第三步  关闭打开的文件
第四步  手动查看文件内容(检查是否符合预期)
b 示例代码
file = open("03 文件操作/home.txt", mode="w", encoding="utf-8")
msg = file.write("hello")
file.close()
c 运行截图
c.1 运行前home.txt文件内容

在这里插入图片描述

c.2 运行后控制台截图

在这里插入图片描述

c.3 运行后home.txt文件内容

在这里插入图片描述

2.2.2 追加写入

a 思路
第一步: 打开文件(mode为a)
第二步: 使用write方法进行读取
第三步  关闭打开的文件
第四步  手动查看文件内容(检查是否符合预期)
b 示例代码
file = open("03 文件操作/home.txt", mode="a", encoding="utf-8")
msg = file.write("yes")
file.close()
c 运行截图
c.1 运行前home.txt文件内容

在这里插入图片描述

c.2 运行后控制台截图

在这里插入图片描述

c.3 运行后home.txt文件内容

在这里插入图片描述

2.3 实战练习

2.3.1 题目内容

a 具体题目内容
home.txt文件 原有的内容为hello
要求如下
1.需要在home.txt文件中追加\nWelcome to HuNan内容
2.在控制台打印home.txt文件的内容
b home.txt文件与demo.py文件的位置示意图

在这里插入图片描述

2.3.2 示例代码

file = open("03 文件操作/home.txt", mode="a", encoding="utf-8")
msg = file.write("\nWelcome to HuNan")
file.close()
# 文件写入后,需要获取最新的文件内容的思路: 先关闭文件然后再打开
file01 = open("03 文件操作/home.txt", mode="r", encoding="utf-8")
msg=file01.read()
print(msg)

2.3.3 运行截图

a 运行前home.txt内容截图

在这里插入图片描述

b 运行后控制台截图

在这里插入图片描述

c 运行后home.txt内容截图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/311981.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【网络安全 | Misc】Ditf 安恒九月赛

正文 binwalk发现rar: 修改后缀,打开需要密码: 修改高度: 得到密码: StRe1izia得到一个流量包: 联系上文搜素png得到: 追踪流: 得到Base64代码: flag{Oz_4nd_Hir0_lov3_F…

Linux---进程控制

一、进程创建 fork函数 在Linux中fork函数是非常重要的函数,它从已存在进程中创建一个新进程,原进程为父进程 fork函数的功能: 分配新的内存和内核数据结构给子进程将父进程部分数据结构内容拷贝至子进程添加子进程到系统的进程列表中fork返…

SpringBoot 实现Execl 导入导出

1、引包 <dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><version>3.0.3</version></dependency><dependency><groupId>cn.afterturn</groupId><artifactId>easy…

dll不能运行是什么意思,分享5种有效的修复方法

在计算机使用过程中&#xff0c;我们可能会遇到各种各样的问题&#xff0c;其中一种常见的问题是“dll不能运行”。这个问题可能会影响到我们的正常使用&#xff0c;甚至导致某些软件无法启动。那么&#xff0c;“dll不能运行是什么意思”呢&#xff1f;dll文件丢失怎么恢复&am…

论文分享 | 利用单模态自监督学习实现多模态AVSR

以下文章来源于智能语音新青年 &#xff0c;作者ttslr 论文地址&#xff1a; https://aclanthology.org/2022.acl-long.308.pdf 代码仓库&#xff1a; https://github.com/LUMIA-Group/Leveraging-Self-Supervised-Learning-for-AVSR 训练一个基于Transformer的模型需要大量的…

21 UVM printer

uvm_printer 类提供了以不同格式打印 uvm_objects 的灵活性。我们已经讨论了使用 uvm_field_* 宏的 print() 方法&#xff0c;或者如果不使用 utils_begin/ end 宏&#xff0c;则编写 do_print() 方法。 UVM printer提供四种内置printer。 uvm_printeruvm_table_printeruvm_t…

【Redis-08】Redis主从复制的实现原理

在Redis中&#xff0c;可以通过slaveof命令或者设置slaveof选项实现两台Redis服务器的主从复制&#xff0c;比如我们有两个Redis机器&#xff0c;地址分别是 127.0.0.1:6379 和 127.0.0.1:6380&#xff0c;现在我们在前者上面执行&#xff1a; 127.0.0.1:6379 > SLAVEOF 12…

分布式技术之流量控制技术

文章目录 什么是流量控制&#xff1f;分布式系统流量控制策略漏桶策略令牌桶策略两种策略对比Sentinel 流量控制工作原理 什么是流量控制&#xff1f; 流量控制&#xff0c;如果学过计算机网络的话&#xff0c;第一反应肯定是网络传输中的流量控制。网络传输中的流量控制&…

【中南林业科技大学】计算机组成原理复习包括题目讲解(超详细)

来都来了点个赞收藏关注一下再走呗&#x1f339;&#x1f339;&#x1f339;&#x1f339; 第1章&#xff1a;绪论 1.冯诺依曼机特点&#xff0c;与现代计算机的区别 冯诺依曼计算机的基本思想是&#xff1a;程序和数据以二进制形式表示&#xff0c;存储程序控制。在计算机中&…

2023 AI开发者生态报告

随着人工智能技术的飞速发展&#xff0c;全球IT市场对AI的投入持续增长&#xff0c;预计到2027年将达到4236亿美元。中国作为AI领域的重要参与者&#xff0c;其投资规模预计将占全球的9%。在这样的背景下&#xff0c;2023年的《AI开发者生态报告》为我们揭示了人工智能时代的技…

数据结构,题目笔记

哈希表 线性探测再散列 【算法数据结构&#xff5c;哈希查找&#xff5c;哈希冲突&#xff5c;除留余数法&#xff5c;线形探测法&#xff5c;例题讲解】https://www.bilibili.com/video/BV1514y1P7BK?vd_source1a684a3a1b9d05485b3d6277aeeb705d 【二次探测再散列法】 【【…

信号与线性系统翻转课堂笔记20——系统函数与信号流图

信号与线性系统翻转课堂笔记20——系统函数与信号流图 The Flipped Classroom20 of Signals and Linear Systems 对应教材&#xff1a;《信号与线性系统分析&#xff08;第五版&#xff09;》高等教育出版社&#xff0c;吴大正著 一、要点 &#xff08;1&#xff09;了解信…