Python笔记 文件的读取操作

1.open()打开函数

再Python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件,语法如下

open(name,mode,encoding)

name:是要打开的文件名的字符串(可以包含文件所在的具体路径)

mode:设置打开文件的模式(访问模式:只读、写入、追加等)

encoding:编码格式(推荐使用UTF-8)

示例代码:

f = open('python.txt','r','encoding=" UTF-8)
# encoding的顺序不是第三位,所以不能用位置参数,用关键字参数直接指定

注意事项

注意:此时的f是open函数的文件对象,对象是python中一种特殊的数据类型,拥有属性和方法,可以使用对象。属性或对象。方法对其进行访问 

r以只读的方式打开文件。文件的指针会放在文件的开头。这是默认模式 
w

打开一个文件只用于写入。如果文件已存在则打开文件,并从开头开始编辑,原有内容会被删除。如果该文件不存在,创建新文件

a打开一个文件用于追加。如果该文件已存在,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

 read()方法:

文件对象.read(num)

num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件中所有的数据。

readlines()方法:

readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素。

f = open('python.txt')
content = f.readlines()#['hello world\n','abcdefg\n','aaa\n','bbb\n','ccc']
print(content)#关闭文件
f.close()

 for循环读取文件行

for line in open("python.txt",r)print(line)# 每一个line临时变量,就记录了文件的一行数据

close() 关闭文件对象

f = open("python.txt","r")
f.close()
# 最后通过close,关闭文件对象,也就是关闭对文件的占用
# 如果不调用close,同时程序没有停止运行,那么这个文件将一直被python程序占用

with open 语法

with open("python.txt","r")as f:f.readlines()# 通过在with open的语句块对文件进行操作
# 可以在操作完成后自动关闭close文件,避免遗忘掉close方法

# 演示对文件的读取# 打开文件
open("D:/测试.txt","r",encoding="UTF-8")# 读取文件 - read()
print(f"读取10个字节的结果:{f.read(10)}")
print(f"read方法读取全部内容的结果是:{f.read()}")
# 读取文件 - readlines()
lines = f.readlines()
print(f"lines对象的类型是:{type(lines)}")
print(f"lines对象的内容是:{lines}")# 读取文件 - readline()
line1 = f.readline()
line2 = f.readline()
line3 = f.readline()
print(f"第一行数据是:{line1}")
print(f"第一行数据是:{line2}")
print(f"第一行数据是:{line3}")# for循环读取文件行
for line in f:print(f"每一行数据是:{line}")# 文件的关闭
f.close()
time.sleep(500000)# with open 语法操作文件
with  ("D:/测试.txt","r",encoding="UTF-8") as f:for line in f:print(f"每一行的数据是:{line}")
time.sleep(500000)

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

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

相关文章

系统集成要求

系统集成要求 投标人需要支持通过标准化方式实现院内信息系统、信息平台、数据中心、运营管理等各系统之间通过标准化数据集建设实现各系统无缝集成。系统集成包含界面集成及数据层面的集成,为方便用户使用,高度集成临床工作站操作模块,比如消…

Apple-how can i use apple account sign in my app

If you’re enabling an App ID for the first time or for a new app, enable the App ID as a primary 在Apple Developer网站上启用Apple登录服务(Sign in with Apple)。 生成Sign in with Apple的Key,以及相关的App ID配置。 注册你的应…

【几何】多少正方形?

题目枚举边长为1边长为 2 \sqrt{2} 2 ​边长为 5 \sqrt{5} 5 ​边长为 8 \sqrt{8} 8 ​边长为 13 \sqrt{13} 13 ​ 扩展-使用代码来数1、定义点对象2、定义正方形对象3、初始化所有点4、调用完整代码 题目 多少正方形? 枚举 设每个横纵相邻点得间距为1&#xff0…

AMHS工程师的作用

1、AMHS Automatic Material Handling System,自动物料搬运系统在半导体厂中扮演着至关重要的角色。它通过自动化的方式,提高了晶圆厂的空间利用率、减少了机台的闲置时间、提升了生产效率以及产品良率。随着半导体制造工艺的不断进步,特别是…

线程池概念、线程池的不同创建方式、线程池的拒绝策略

文章目录 💐线程池概念以及什么是工厂模式💐标准库中的线程池💐什么是工厂模式?💐ThreadPoolExecutor💐模拟实现线程池 💐线程池概念以及什么是工厂模式 线程的诞生是因为,频繁的创…

3D Web轻量化引擎HOOPS Commuicator是如何创建AEC查看器的?

在当今数字化时代,建筑、工程和施工(AEC)行业正经历着一场技术革命。HOOPS Communicator,一款基于HOOPS Web平台的3D Web轻量化引擎,正是这场革命的先锋之一。本文将探讨HOOPS Communicator是如何创建AEC查看器的&…

【CentOS 7】深入指南:使用LVM和扩展文件系统增加root分区存储容量

【CentOS 7】深入指南:使用LVM和扩展文件系统增加root分区存储容量 大家好 我是寸铁👊 【CentOS 7】深入指南:使用LVM和扩展文件系统增加root分区存储容量 ✨ 喜欢的小伙伴可以点点关注 💝 前言 在运行CentOS 7服务器或虚拟机时&a…

用户 token 持久化

用户 token 持久化 业务背景:Token的有效期会持续一段时间,在这段时间内没有必要重复请求token,但是Vuex本身是基于内存的管理方式,刷新浏览器Token会丢失,为了避免丢失需要配置持久化进行缓存 基础思路:…

windows powershell 自动补全/自动suggestion

安装PSReadLine 超级管理员下 Install-Module -Name PSReadLine -RequiredVersion 2.3.5具体最新版本:https://www.powershellgallery.com/packages/PSReadLine/ 编辑powersheel配置文件 在~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 如果没有则…

【扫雷游戏】C语言详解

Hi~!这里是奋斗的小羊,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 💥💥个人主页:奋斗的小羊 💥💥所属专栏:C语言 🚀本系列文章为个人学习…

lvs集群 Keepalived

Keepalived高可用集群 Keepalived概述 功能 LVS规则管理LVS集群真实服务器状态监测管理VIP Keepalived实现web高可用 安装keepalived软件 在webservers上配置 启动服务 webservers systemctl start keepalived.service ip a s | grep 192.168 #web1主机绑定vip 测试…

o(n)求逆元

线性时间计算逆元 for (int i 2; i < n; i) {inv[i] MOD - (MOD / i * inv[MOD % i] % MOD) % MOD;}线性时间计算阶乘逆元 //先计算出n!的逆元for (int i n - 1; i > 0; i--) {inv[i] inv[i 1] * (i 1) % MOD;}1-n的LCM 对于1-n中所有数的lcm,其应该等于1-n中每个…

Windows资源管理器down了,怎么解

ctrlshiftesc 打开任务管理器 文件 运行新任务 输入 Explorer.exe 资源管理器重启 问题解决 桌面也回来了

5.浏览器存储

1.浏览器本地存储方式 &#xff08;1&#xff09;Cookie 特性: 名称创建后不可修改。遵循同源策略&#xff0c;不能跨域名共享。每个域名下Cookie数量和大小受限&#xff08;约20个&#xff0c;每个4KB&#xff09;。安全性问题&#xff1a;易被拦截&#xff0c;用于会话劫持。…

MoonBit 周报 Vol.46:支持32位无符号整数!

MoonBit 更新 支持了 32 位无符号整数 let num 100U // 32位无符号整数的字面量需要后缀U在 wasm 后端导出返回值类型为 Unit 的函数时&#xff0c;之前导出函数的类型中会有 (result i32)&#xff0c;现在 MoonBit 编译器会自动生成一个没有返回值 wrapper 函数&#xff0c…

爬虫day3

爬虫如何提高效率&#xff1f; 我们可以选择多线程&#xff0c;多进程&#xff0c;协程等操作完成异步爬取。 异步&#xff1a;把一个变成多个 线程&#xff1a;执行单位 进程&#xff1a;资源单位&#xff0c;每一个进程至少有一个线程 if __name__ __main__: print(&qu…

都说HCIE“烂大街”了,说难考都是假的?

在网络技术领域&#xff0c;华为认证互联网专家&#xff08;HCIE&#xff09;长期以来被视为一项高端认证&#xff0c;代表着专业技能和知识水平。 然而&#xff0c;近几年来&#xff0c;考证的重视度直线上升&#xff0c;考HCIE的人越来越多了&#xff0c;考过的人好像也越来越…

C++ | Leetcode C++题解之第162题寻找峰值

题目&#xff1a; 题解&#xff1a; class Solution { public:int findPeakElement(vector<int>& nums) {int n nums.size();// 辅助函数&#xff0c;输入下标 i&#xff0c;返回一个二元组 (0/1, nums[i])// 方便处理 nums[-1] 以及 nums[n] 的边界情况auto get …

在dolphinDB上直接保存一个dataframe为分布式数据表

步骤1&#xff1a;获取链接 import dolphindb as ddb from loguru import loggerdef get_dolphin_session():"""获取dolphinDB的session"""dolphin_config {"host": "127.0.0.1","port": 13900,"username&…

android adb常用命令集

1、系统调试 #adb shell&#xff1a;进入设备的 shell 命令行界面&#xff0c;可以在此执行各种 Linux 命令和特定的 Android 命令。 #adb shell dumpsys&#xff1a;提供关于系统服务和其状态的详细信息。 #adb logcat&#xff1a;实时查看设备的日志信息。可以使用过滤条件来…