Python语言:文件的操作与使用

Python语言可以对电脑中的文件进行一系列操作,包括文件的打开与关闭,文件内容的读取和追加等。

 打开文件

       语法:使用open函数

  • 使用python语言的内置open函数打开一个文件,里面有三个参数可以指定文件的路径,操作方式,编码格式。参数之间用逗号隔开。 
  • 常见的打开模式有:“r”读取,“w”写入,“a”追加。

        语法格式:

                        变量名 = open("文件路径","操作方式",encoding="编码格式")

        以只读的模式打开一个文本文档并查看类型。

#  打开一个文件
#
f = open("E:/13.txt","r",encoding="UTF_8")

# 查看文件的类型

print(type(f))

     运行结果如下:

读取文件内容

注意点:读取文件的内容需要以只读的方式打开一个文件。

  • read()方法:读取文件中的全部内容,返回类型是一个字符串。
  • reandlines()方法:读取文件的全部行,并封装到列表中。
  • readline()方法:读取文件的一行内容,返回类型是一个字符串。
  • 使用for循环的方法读取文件的全部内容,返回类型是一个字符串。

read()方法的具体讲解:

语法格式:

                变量名.reand()

  1. 括号内没参数会读取文件的全部内容。
  2. 括号内有参数会读取指定内容。

括号内没参数会读取文件的全部内容。

f = open("E:/13.txt","r",encoding="UTF_8")
# 文件的读取,使用read()方法 会返回一个字符串
# 格式:变量名.read() 括号内不写参数读取文件全部内容,有参数读取指定内容
print(f.read())

 运行结果如下:

括号内有参数会读取指定内容。

# 有参数读取指定内容
f = open("E:/13.txt","r",encoding="UTF_8")
print(f.read(10))

运行结果如下:

 readlines()方法读取文件中的全部行,并封装到列表中。

语法格式:

                变量名.readlines()

使用 readlines()方法读取文件中的全部行并查看返回类型。

f = open("E:/13.txt","r",encoding="UTF_8")
# # readlines()读取文件的全部行,并封装到列表中
print(f.readlines())
print(type(f.readlines()))

 运行结果如下:

readline()方法:读取文件的一行内容,返回类型是一个字符串。

语法格式:

                变量名.readlinee()

使用 readline()方法读取文件中的一行内容并查看返回类型。

f = open("E:/13.txt","r",encoding="UTF_8")
# readline()读取文件的一行内容
print(f.readline())
print(type(f.readline()))

运行结果如下:

使用for循环来读取文件的全部内容并查看返回类型。

f = open("E:/13.txt","r",encoding="UTF_8")
# for循环去读取文件内容
for a in f :
    print(a)
    print(type(a))

运行结果如下:

说明:for循环会返回文件的全部内容,因为截屏的原因,不能展示全部,读者可自行尝试。

写入文件内容

注意点:可以用只写的方式创建一个空文件或者打开一个已有的文件。

语法格式:

                变量名.write()

以只写的方式创建一个空文件,并使用write()方法给空文件赋值。

# 创建一个空文件
# write()写入内容

# w的注意点,文件存在进行写入操作,会清除文件中已有的内容
f = open("E:/14.txt","w",encoding="UTF-8")
f.write("123")

运行结果如下:

  以只写的方式打开已有的文件,并使用write()方法给文件赋值会清除已有内容,只留下重新写入的内容。

# 创建一个空文件
# write()写入内容

# w的注意点,文件存在进行写入操作,会清除文件中已有的内容
f = open("E:/14.txt","w",encoding="UTF-8")
f.write("456")

运行结果如下:

文件内容的追加

文件内容的追加,顾名思义,就是文件中已经有内容了,继续给文件添加内容。

注意:以追加的方式打开一个已有的文件,并使用write()方法继续写入内容。

我们先打开一个已有内容的文件,并查看内容。

以追加的方式打开一个已有的文件,并使用write()方法继续写入内容。

# 使用文件中的a操作
f = open("E:/11.txt","a",encoding="UTF-8")
# # write写入内容
f.write("python")

 运行结果如下:

文件的关闭

有始有终嘛,打开文件然后进行一系列操作后,得关闭文件啊,不关闭文件怎么行。

使用close()方法关闭文件

提示:上文案例中的代码中皆没有关闭文件的代码,读者练习的时候自行加上文件关闭代码。

语法格式:

                变量名.close()

f = open("E:/11.txt", "r", encoding="UTF-8")
print(f.read())
f.close() # 关闭文件

文件的自动关闭

这里有个小问题,要是有人忘了写关闭文件的代码呢,文件就一直运行的呢,这可不行,有什么帮办法可以一劳永逸解决老是忘写关闭文件的代码呢,还真的有,python语言的作者给你整的明明白白的。

通过 with open 语法打开文件,可以进行文件的自动关闭。

通过with open 语法打开文件并读取文件的全部内容并进行文件的自动关闭。

with open("E:/11.txt","r",encoding="UTF_8") as f :  # f是变量名
    print(f.read())

运行结果如下:

本文结束。

                

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python实现双臂老虎机k-armed-bandit

老虎机,投入钱币会随机返还钱币(reward) 这里设置两台老虎机,一台均值500,标准差5,一台均值550,标准差10 初始值均为998,更新规则为reward之和/轮数 最后结果会在均值附近收敛 impo…

山东省技能兴鲁网络安全大赛 web方向

文章目录 购买FLAG日志里的FLAG一只小蜜蜂 购买FLAG 随便登录admin进去&#xff0c;发现有充值和购买功能 但是试试充值发现不行 购买页面如下 bp抓包看看&#xff0c;发现value值可控 我们试试将其改为正数&#xff0c;发现成功 购买得到flag 日志里的FLAG <?phphi…

创新的Sui项目在CoinDCX的Unfold 2023黑客松中获奖

近日&#xff0c;在印度班加罗尔&#xff08;Bengaluru&#xff09;&#xff0c;超过2500人参加了CoinDCX组织的综合性Web3活动Unfold 2023。作为讨论、聚会和活动的一部分&#xff0c;进行了一次多链黑客松&#xff0c;Sui联合赞助了该活动。所有团队&#xff0c;无论他们构建…

企业如何利用好用户画像对客户进行精准营销?提高营销转化?

随着市场竞争的加剧&#xff0c;企业对于客户的需求和行为越来越关注&#xff0c;如何利用好用户画像对客户进行精准营销&#xff0c;提高营销转化&#xff0c;成为企业关注的焦点。 一、了解用户需求和行为 首先&#xff0c;企业需要了解客户的需求和行为&#xff0c;包括客户…

Docker技术教程

利用Docker快速安装MySQL 运行结果如下&#xff1a;

C++入门(1)

目录 一、什么是C 1、C关键字(C98) 2、C兼容C 二、C程序预处理指令 三、命名空间 1、命名冲突 第一种&#xff1a; 第二种&#xff1a; 2、域作用限定符 3、实现命名空间 4、命名空间冲突 5、访问命名空间 6、命名空间“std” 四、输入输出 1、定义 2、自动识…

Springboot 程序实现加密,禁止 jadx 反编译

在Spring Boot中实现程序加密和禁止jadx反编译是一个复杂的问题。虽然无法完全禁止反编译&#xff0c;但可以通过一些技术手段来提高代码的安全性。 以下是一些可能的措施&#xff1a; 使用混淆工具&#xff1a;使用Java代码混淆工具&#xff08;如ProGuard或YGuard&#xff0…

MySQL MVCC机制详解

MySQL MVCC机制详解 MVCC, 是Multi Version Concurrency Control的缩写&#xff0c;其含义是多版本并发控制。这一概念的提出是为了使得MySQL可以实现RC隔离级别和RR隔离级别。 这里回顾一下MySQL的事务&#xff0c; MySQL的隔离级别和各种隔离级别所存在的问题。 事务是由 …

Sandbox: bash(5613) deny(1) file-write-create 错误解决

Showing Recent Errors Only Sandbox: bash(5613) deny(1) file-write-create /Users/xx/Dev/UniappLearn/MSLUniappDemo/Pods/resources-to-copy-MSLUniappDemo.txt image.png 解决方法 build setting搜索ENABLE_USER_SCRIPT_SANDBOXING&#xff0c;YES&#xff08;默认&…

揭秘软件测试培训骗局:如何从贩卖焦虑到高薪包就业

你可能并不是一个IT行业的从业者&#xff0c;也可能是第一次听说软件测试工程师这个岗位。但由于看了某个网站的广告&#xff0c;或者听某个人说可以花钱培训软件测试技术&#xff0c;入职软件测试工程师岗位&#xff0c;于是动了这方面的心思。 但是互联网上有很多地方说&…

JavaScript中的原型和原型链

给大家推荐一个实用面试题库 1、前端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★ 地址&#xff1a;web前端面试题库 原型和原型链是JavaScript中一个重要且常常被误解的概念。它们在理解对象、继承和属性查找时扮演着关键的角色。 1…

clickhouse的安装和配置

使用虚拟机测试, 系统为ubuntu 22.04 一 安装 sudo apt-get install -y apt-transport-https ca-certificates dirmngr sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 8919F6BD2B48D754echo "deb https://packages.clickhouse.com/deb stable ma…

μC/OS-II---内存管理2(os_core.c)

流程---内存管理扩展 初始化μC/OS-II创建用户起始任务开始多任务调度统计Task创建用户应用程序任务 初始化μC/OS-II void OSInit (void) {OSInitHookBegin(); /* Call port specific initialization code */OS_InitMisc(); …

μC/OS-II---Task管理2(os_task.c)

目录 改变Task优先级Task挂起Task恢复Task信息获取Task调度器上锁&#xff08;os_core.c&#xff09;Task调度器开锁&#xff08;os_core.c&#xff09; 改变Task优先级 #if OS_TASK_CHANGE_PRIO_EN > 0u INT8U OSTaskChangePrio (INT8U oldprio,INT8U newprio) { #if (…

2023/11/14JAVA学习

主子线程每次执行顺序可能都不一样

什么猫罐头好吃?猫咪嘎嘎炫的5款猫主食罐头推荐!

想必铲屎官都知道给猫咪长期吃主食罐头的好处了吧&#xff01;主食罐头不仅营养丰富&#xff0c;还能让猫咪顺便补充水分。有时候猫咪食欲不佳&#xff0c;一罐猫主食罐头就能让它们胃口大开呢~ 作为家里有3只猫的铲屎官来说&#xff0c;养猫的这几年可以说血泪史了&#xff0…

Java版企业电子招标采购系统源码—企业战略布局下的采购寻源

项目说明 随着公司的快速发展&#xff0c;企业人员和经营规模不断壮大&#xff0c;公司对内部招采管理的提升提出了更高的要求。在企业里建立一个公平、公开、公正的采购环境&#xff0c;最大限度控制采购成本至关重要。符合国家电子招投标法律法规及相关规范&#xff0c;以及审…

HTML5响应式网页设计(考试题:旅游项目)

效果图 .html代码 <!DOCTYPE html> <html><head><meta name"viewport"content"widthdevice-width,initial-scale1,minimum-scale1,maximum-scale1,user-scalableno" /><meta charset"utf-8" /><title></…

keil5暗色主题配置

在keil文件目录下找到global.prop 将以下内容替换至该文件即可 # properties for all file types indent.automatic1 virtual.space0 view.whitespace0 view.endofline0 code.page0 caretline.visible0 highlight.matchingbraces1 print.syntax.coloring1 use.tab.color1 crea…

leetcode刷题日记:121. Best Time to Buy and Sell Stock( 买卖股票的最佳时机)

题目给了我们一组数prices&#xff0c;其中prices[i]表示第i天的股票价格&#xff0c;需要我们求出买卖股票所能获得的最大收益。 我们的第一想法就是从算出每一种买卖股票的情况然后求出里面的最大值&#xff0c;这样我们就能得到最大收益是多少&#xff0c;但是这种情况过于复…