Python中对open读取文件内容时的mode模式解析

python文件流-open-文件操作详解释-文件流 open函数,主要是都文件进行读取,写入操作; fs是file stream,文件流的缩写 源码如下: def open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True): 其中file是文件名,可以给相对路径,也可以给绝对路径,如果文件中含有中文,请记得指定编码格式为- encoding="utf-8" 一,读取模式 fs = open("练习.txt") #. 阅读详情

1.Python可以使用open函数来实现文件的打开,关闭,读写操作;

Python3中的open函数定义为:

open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)

其中mode列表为:

'r' #open for reading (default)
'w' #open for writing, truncating the file first
'x' #create a new file and open it for writing,python3新增
'a' #open for writing, appending to the end of the file if it exists
'b' #binary mode
't' #text mode (default),python3新增
'+' #open a disk file for updating (reading and writing)
'U' #universal newline mode (deprecated)

这里我们主要关心一下’r’, ‘w’, ‘a’, ‘r+’, ‘w+’, ‘a+’, ‘x’,很多人容易混淆不同模式的读写操作

2.‘r’

只读模式,open函数中mode参数的默认模式,文件不存在的话,报FileNotFoundError(python2是IOError);
文件打开后,初始游标位置为0;
每次读都是从游标位置开始读;
如果进行了写操作,会报如下异常:
io.UnsupportedOperation: not writable

3.‘w’

只写模式,文件不存在的话,创建文件;文件存在的话,首先清空文件,然后开始写;
文件打开后,初始游标位置为0;
每次写都是从游标位置开始写;
如果进行了读操作,首先文件也会被清空,会报如下异常:
io.UnsupportedOperation: not readable

4.‘a’

追加模式,文件不存在话,创建文件;文件存在的话,不会清空文件;
文件打开后,初始游标位置为文件结尾;
每次写都是从结尾开始写;
如果进行了读操作,同时报如下异常:
io.UnsupportedOperation: not readable

上面的比较好理解,下面就有点绕了

5.‘r+’

读写模式,文件不存在的话,报FileNotFoundError(python2是IOError);
文件打开后,初始游标位置为0;
每次读写都是从游标位置开始;但是对于写操作,类似于替换操作;
看如下代码:
文件内容为:

abcdefg

代码内容为:

f = open('open_mode.txt', 'r+')
f.write('xyz')
f.close()

运行代码后,文件内容变为:

xyzdefg
6.‘w+’

只写模式,文件不存在的话,创建文件;文件存在的话,首先清空文件;
文件打开后,初始游标位置为0;
每次读写都是从游标位置开始;写操作,类似于替换操作;

7.‘a+’

追加模式,文件不存在话,创建文件;文件存在的话,不会清空文件;
文件打开后,初始游标位置为文件结尾;
每次写都是从结尾开始写;
读操作从游标位置开始;

8.‘x’

python3新加
创建文件并写操作,操作必须是不存在的文件,如果操作的文件已存在,则报错FileExistsError
不可读,如果进行了读操作,同时报如下异常:

io.UnsupportedOperation: not readable
9.‘b’

二进制形式读写文件;
写数据时,写入的数据类型必须为字符串类型,其他类型必须通过json(就是符合json格式的字符串)写入
python2与python3对于’b’ mode的行为不同,这和python2与python3的字符串类型有关;事实上,python的字符串类型有两种;
Python2的两种字符串类型,分别叫做str和Unicode,str实例包含原始的8位值;而unicode的实例,则包含Unicode字符。
Python2的两种字符串类型,分别叫做byte和str,与python2不同的是,byte实例包含原始的8位值;而str的实例,则包含Unicode字符。
当读写文件采用’b’的模式时,要求必须以二进制形式读写,在python2中,字符串必须为str字符串,python3中必须为byte字符串;所以在python3,'b’模式下这样读写字符串

s = b'hello world!' #注意是byte字符串
f = open('open_mode.txt','wb')
f.write(s)

或:

s = 'hello world!'f= open('open_mode.txt','wb')
f.write(s.encode(encoding='utf-8'))

不然会报如下错误:

Traceback (most recent call last):
File"C:/Users/Desktop/Python/cnblogs/数据类型.py", line 125, in f.write(s)
TypeError: a bytes-like object is required, not 'str'

read文本的相关方法

准备测试数据 test.txt

富强、民主、文明、和谐,
自由、平等、公正、法治,
爱国、敬业、诚信、友善。

python 读取文件的常用方法open()
读取的方法,有read(),readline(),readlines()

1.read()

read()方法是读取整个文件,将整个文件的内容放在一个字符串变量中.
这个方法的缺点就是当文件过大尤其是大于内存时,方法就失效了.

with open("test.txt", "r", encoding='UTF-8')as f:
    res = f.read()
    print(res)

直接输出文件里的所有内容

富强、民主、文明、和谐,
自由、平等、公正、法治,
爱国、敬业、诚信、友善。
2.readline()

readline()方法是每次只读取一行,并将读取的内容放在一个字符串变量中,缺点是这种方法比较慢.

with open("test.txt", "r", encoding='UTF-8')as f:
    res = f.readline()
    print(res)

执行的效果为

富强、民主、文明、和谐,

要想获取全部的内容,就需要自己手动循环了

#学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441
with open("test.txt", "r", encoding='UTF-8')as f:
    while True:
        line = f.readline()
        if line:
            print(type(line), line)
        else:
            break

结果为

<class 'str'> 富强、民主、文明、和谐,
<class 'str'> 自由、平等、公正、法治,
<class 'str'> 爱国、敬业、诚信、友善。
3.readlines()

readlines()方法一次性读取整个文件,并自动将内容分析成一个行的列表:

with open("test.txt", "r", encoding='UTF-8')as f:
    res = f.readlines()
    print(res)

结果为

['富强、民主、文明、和谐,\n', '自由、平等、公正、法治,\n', '爱国、敬业、诚信、友善。']

去掉/n及分割

with open("test.txt", "r", encoding='UTF-8')as f:
    res = f.read()
    print(res)
    list = res.replace('\n', ',').split(',')
    print(list)

# 循环lines
with open("test.txt", "r", encoding='UTF-8')as f:
    lines = f.readlines()
    for line in lines:
        print(line)
python解析mht文件_python,<一>读取文件open() 在实际操作中,我们经常会读取文件,这个时候python为我们提供了一个open()的方法,供我们读取文件,通过help(open),我们可以获取open的方法f.close()关闭读取f.read(size=-1)读取文件size个字符,但未给size赋值或者赋值为负数时,读取的是文件剩余的所有字符,然后以字符串方式进行返回。f.readline()以写入模式打开,如果文件存在,则在末尾加入f.w... 阅读详情

相关推荐

Python文件读取全解析:从open()到数据处理的实战指南

文件操作是编程中的基础概念,它涉及程序与外部存储设备的数据交互。其核心原理是通过系统调用建立数据流通道,实现对磁盘文件的读写访问。掌握文件操作的技术价值在于能够高效、安全地处理各种数据源,如日志分析、配置管理和数据清洗等应用场景。在实际工程实践中,Python的`open()`函数是文件操作的入口,而`with`语句则确保了资源的自动管理,避免了内存泄漏。对于大文件处理,迭代读取是保证内存安全的关键策略,同时正确处理文件编码和路径问题也是提升代码健壮性的重要环节。本文围绕Python读取TXT文件的完整流程

weixin_30635053的博客 388

python中open的mode

可选值包括r、r+、w、w+、a、a+、x、x+、rb、wb、ab、xb、rt、at、wt、xt这16种。基本操作模式有四种,r、w、a、x,分别代表读、写、追加、创建新文件。\n\nr模式下只能对文件进行读取操作,不能写入。若不存在,则先创建文件,再写入。若不存在,则先创建文件,再写入。\n\na模式和w模式的区别在于,w模式写入时会先将文件原内容清空,再写入新内容。\n\nx模式是新建一个文件,然后只能对其进行写入操作,不能读取。x模式下,指定文件必须不存在,若已存在,则会报错。

m0_73632606的博客 1152

Python中open函数的文件读取模式详解

在Python中,使用open函数可以打开文件并读取其中的内容。open函数提供了不同的文件读取模式,用于指定在打开文件时应该如何操作和处理文件。本文将详细解析open函数的文件读取模式,同时提供相应的源代码示例。通过使用不同的文件读取模式,我们可以根据需要打开文件并进行相应的读取或写入操作。请注意,在打开文件后,我们应该始终使用。希望本文对你理解Python中open函数的文件读取模式有所帮助。参数用于指定文件的读取模式。方法关闭文件,以确保资源的正确释放。参数表示要打开的文件名,而。

JoplCommon的博客 195

Python 文件I/O的模式与解释

模式 描述 t 文本模式 (默认)。 x 写模式,新建一个文件,如果该文件已存在则会报错。 b 二进制模式。 + 打开一个文件进行更新(可读可写)。 U 通用换行模式(不推荐)。 r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默...

个人学习,如有不当,望指正,万分感谢! 754

LwIP在国产MCU的落地实践:从协议栈优化到网络稳定性实战

本文详细介绍了LwIP协议栈在国产GD32F407 MCU上的移植与优化实践,涵盖硬件平台选择、驱动适配、协议栈调优和网络稳定性提升策略。通过内存管理优化、实时操作系统集成和性能测试,为工业物联网应用提供高可靠性网络通信解决方案,显著提升数据传输效率和系统稳定性。

m2n3b4v5c6的博客 270

Visual Studio 6.0 镜像下载全指南:从企业版到中文版

本文提供Visual Studio 6.0企业版和中文版的镜像下载全指南,包括详细版本解析、已验证的下载链接及校验信息。针对现代系统的安装技巧和兼容性处理方案,帮助开发者高效获取并运行这一经典开发工具,特别适合维护遗留系统的专业人员。

weixin_33712987的博客 1039

Python open(name, mode)函数文件打开模式介绍

函数打开文件时,需要指定打开模式。模式标识了文件对象是以何种方式被打开和操作的。模式可以以二进制或者文本方式打开文件,可以同时使用。在Python中使用open()以二进制可写方式打开文件,rt。以文本可读方式打开文件。

2424

第81篇:Vibe Coding时代:LangGraph + Eval评估体系实战,解决 Agent 优化全靠感觉的问题

本文介绍了一个为LangGraph Coding Agent设计的评估体系解决方案。文章首先指出了当前AI Coding Agent开发中的常见问题:优化过程缺乏客观评估标准,导致改进效果难以量化。随后提出了一个完整的评估框架,包括评估指标(任务成功率、质量指标、安全指标、成本指标和流程指标)、项目结构设计和评估案例集。 核心内容包括: 设计了JSON格式的评估案例集,覆盖正常任务、边界任务和高风险场景 实现了模拟Agent输出的演示代码 构建了多维度评分系统,包括关键词匹配、禁用词检测和成本评估 提供了评

sundong_81的博客 47

Python的open函数定义了哪些属性?关闭和读写对应的应该如何使用?

Python可以使用open函数来实现文件的打开,关闭,读写操作; Python3中的open函数定义为:open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True) 其中mode列表为: 'r' #open for reading (default) 'w'...

寄居蟹的博客 720

手把手完整实现STM32+LORA组网网关+机智云平台+手机APP应用———第一节- 一主多从的LORA本地组网通信-实现从机采集温湿度与主机显示数据

本教程为《手把手实现STM32+LORA组网网关+机智云平台+手机APP应用》第一节。实现一个主机,两个从机的LORA组网通信。两个从机采集温湿度数据并通过LORA传输数据到主机,然后主机接收到两个从机数据后进行数据显示,本节通过PC串口助手显示两个从机的数据。 下一节将其主机接收的数据通过WIFI网关(ESP8266)传到机智云平台与手机APP。 本文讲解一主多从的LORA本地组网通信,串口助手进行数据展示。使用硬件主要包括:STM32F103C8T6最小系统板(3个)、正点原子LORA模块ATK-L

嵌入式阿齐Archie 1万+

YOLOv8n轻量化实战:10分钟打通实时摄像头目标检测,附参数调优与避坑指南

本文介绍了如何快速入门YOLOv8目标检测框架,通过摄像头实战实现实时检测。YOLOv8凭借轻量化架构和跨平台优势,是新手入门的理想选择。文章详细讲解了环境搭建(1分钟完成)、核心代码逻辑(3分钟掌握)以及性能调优技巧(3分钟进阶),提供可直接运行的代码示例。重点包括:模型选择(优先yolov8n.pt)、摄像头参数优化、置信度阈值调整、检测类别指定等实用技巧,帮助开发者快速实现10-15FPS的实时检测效果,并针对不同场景提供优化建议。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 370

python open读取文件内容时的mode模式解析

Python可以使用open函数来实现文件的打开,关闭,读写操作; Python3中的open函数定义为:open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)其中mode列表为: 'r' #open for reading (default) 'w' #open f...

darling331的博客 1878

Python 爬虫实战:爬取 BOSS 直聘职位,实现岗位要求关键词提取

摘要:本文基于BOSS直聘数据分析师岗位信息,采用Python爬虫技术获取职位数据,通过文本分析和可视化方法研究岗位技能需求特征。研究首先设计爬虫程序获取职位基本信息和岗位要求文本,经数据清洗后运用jieba分词和词频统计提取关键词。结果显示SQL、Python为最核心技能,不同级别岗位需求差异明显:初级重基础数据处理,高级需建模和管理能力;行业间亦存在差异,互联网关注用户增长,金融侧重风控。研究为求职者技能提升提供了数据支持,同时展示了从非结构化文本中挖掘有价值信息的完整流程。

2503_91057718的博客 1766

蓝易云:Python中对open读取文件内容时的mode模式解析

模式,可以控制文件的打开方式(只读、写入、追加等)和文件内容的读取或写入操作。根据具体的需求,选择适当的。需要注意的是,打开文件后应该在不再使用时关闭文件,可以使用。模式来控制文件的操作方式。可以根据需要组合使用这些模式,例如。以下是一个示例代码,演示如何使用。方法读取文件内容,并将内容存储在。函数打开文件时,可以指定不同的。最后,我们打印文件内容。方法来手动关闭文件,或者使用。的文件,并将文件对象赋值给。表示以二进制方式读取文件,在Python中,使用。在上述示例中,我们使用。语句来自动关闭文件。

高性价比服务器就选:蓝易云 874

打开.nc降水气象数据制作年降水量地图

图层的单位为度,在反距离插值中也是以度为单位,比较麻烦,还是想用以m为单位的投影,这里是个bug,后续调整一下。该彩色部分是以2021年1月、2月、3月的降水数据分别作为RGB得到。因为该栅格的分辨率还是太大了,一个栅格就能覆盖一个县,若想要进行降尺度,可以做插值处理。下载的数据集为2021-2022年,因此有12+12=24个月,24个波段。想要得到廊坊市周围的数据,需要裁剪范围,在降水数据图层上导出数据。打开数据管理工具-投影和变换-定义投影。在降水数据图层上右击属性,添加投影。得到了降尺度的插值图。

所有专家都曾始于新手 4520

【ROS2】机械臂MoveIt2

navigation2 专注于移动机器人的导航与定位,处理大范围空间的底盘运动;MoveIt2 专注于机械臂的操作规划,处理多关节协同的末端执行器运动。在复合机器人(如,移动机械臂)navigation2 负责移动到目标区域,MoveIt2 负责机械臂抓取。官网:https://moveit.picknik.ai/main/index.html。

郭老二 597

蓝易云 - Python中对open读取文件内容时的mode模式解析

模式,可以控制文件的打开方式(只读、写入、追加等)和文件内容的读取或写入操作。根据具体的需求,选择适当的。需要注意的是,打开文件后应该在不再使用时关闭文件,可以使用。模式来控制文件的操作方式。可以根据需要组合使用这些模式,例如。以下是一个示例代码,演示如何使用。方法读取文件内容,并将内容存储在。函数打开文件时,可以指定不同的。最后,我们打印文件内容。方法来手动关闭文件,或者使用。的文件,并将文件对象赋值给。表示以二进制方式读取文件,在Python中,使用。在上述示例中,我们使用。语句来自动关闭文件。

高性价比服务器就选:蓝易云 516

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【Python】文件打开:with open具体解析

如果文件不存在,会创建一个新文件;如果文件已存在,会在文件末尾追加内容,同时可以读取文件。如果文件不存在,会创建一个新文件;:使用 with 语句时,文件会在代码块执行完毕后自动关闭,即使在文件操作过程中发生异常,文件也会被正确关闭。如果文件已存在,会清空文件内容,然后可以读取和写入。如果文件已存在,会在文件末尾追加内容。如果文件已存在,会在文件末尾追加内容。如果文件已存在,会清空文件内容。如果文件已存在,会清空文件内容。同时读写:使用 ‘r+’、‘w+’ 或 ‘a+’,并根据需要选择二进制模式。

Herbert 1708

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

python open读取_读取文件—open()、read()

在Windows下的powershell打开python: Win+R打开运行窗口,输入powershell,输入python进入python环境。一、Python open()函数文件打开操作打开文件会用到open函数,标准的python打开文件语法如下:open(name[,mode[,buffering]])open函数的文件名是必须的,而模式和缓冲参数都是可选的。比如说有个a.txt的文本...

weixin_39534149的博客 5399

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Python open()函数打开文件的模式详解

Python open函数的模式详解 在Python中使用open()函数打开文件,并返回一个文件对象,然后通过文件对象对文件进行读写操作。不同类型的文件需要采用不同的模式来打开,并且采用不同模式打开文件,我们可以进行的操作以及程序运行的结果也是不同的。 打开模式 open()函数完整的语法格式为: open(file, mode=‘r’, buffering=None, encoding=N...

baopengchao0264的博客 8031

12.4 Python open()函数详解:打开指定文件

在 Python中,如果想要操作文件,首先需要创建或者打开指定的文件,并创建一个文件对象,而这些工作可以通过内置的 open() 函数实现。 open() 函数用于创建或打开指定文件,该函数的常用语法格式如下: file = open(file_name [, mode='r' [ , buffering=-1 [ , encoding = None ]]]) 此格式中,用 [] 括起来的部分为可选参数,即可以使用也可以省略。其中,各个参数所代表的含义如下: file:表示要创建的文件对象。 file_

小董老师的博客 5589

Python读取文件---open()函数

1.文件打开:open() f = open(file,[,mode],[,encoding],[,buffering]) f:open()返回的文件对象; file:要打开的文件(绝对路径+文件名); mode:指定模式(只读:r,写入:w,追加:a,等),默认只读; encoding:指定文件编码(utf-8、gbk、gb2312、gb18030、ANSI、utf-8-sig);...

Vulpes corsac 1559

python读取文件特定内容_Python读取文件中特定位置及特定数目的内容

准备一个文件text.txt,内容为一行"AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDD"。示例代码:'''Created on Sep 18, 2014@author: liu.chunming'''#There is a text.txt file which contains "AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDD"text_file=r"C:\...

weixin_39970994的博客 1615

Python open函数使用详解

open() 可以打开一个文件,并返回文件对象。打开文件文件打开模式,创建文件,读取文件内容,写入文件,中文编码错误,缓冲区

wangyuxiang946的博客 7149

python I 本地 html 文件读取方法及编码报错问题详解

本地 html 读取编码问题解决方法有二:一是指定正确的编码格式读取本地 html 文件;二是抛开编码不管,直接采用二进制文件读取本地 html 文件。

LHJ优快云YL的博客 1144
上一篇: Python 元组转换为列表
下一篇: python计算某字符出现次数
Python热爱者
博客等级 码龄7年 3053粉丝 1330原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值