python学习笔记——文件操作
1. 文件操作****
1.1. open()函数****
参数:
1. File:需要打开的文件
2. Mode:读、写、读+写
(1) r:只读
(2) w:只写文件(覆盖)
(3) a:只写文件(追加)
(4) +:
① r+:可读可写(覆盖)
② w+:可读可写(覆盖)
③ a+:可读可写(追加写入)
了解:
④ rb:二进制形式读取(图片)
⑤ wb:二进制形式写入(图片)
⑥ ab:二进制形式追加写入(图片)
3. Encoding:编码格式
4. New_line:换行控制,\n
5. Closefd:文件关闭的时候,文件描述要不要关闭,默认为true关闭
1.1.1. 读****
1.1.1.1. .read():****
读取文件的所有数据,默认从头开始
f = open(file=r'E:\Study\Python\Test1\test.txt',mode='r')
result = f.read()
[print(result)]
f.close()
1234567890
sdfg
dfsuiewh
fdsufhaeufhew
Faewawe
1.1.1.2. .readline()****
读取第一行数据,更节省内存
f = open(file=r'E:\Study\Python\Test1\test.txt',mode='r')
result = f.readline()
[print(result)]
f.close()
1234567890
1.1.1.3. .read l ines()****
按行读取所有文件的数据,返回list
每一行就是list的一个元素,换行符也会读取出来
f = open(file=r'E:\Study\Python\Test1\test.txt',mode='r')
result = f.readlines()
[print(result)]
f.close()
['1234567890\n', 'sdfg\n', 'dfsuiewh\n', 'fdsufhaeufhew\n', 'faewawe']
1.1.2. 写****
1.1.2.1. .write()****
覆盖写入文件
f = open(file=r'E:\Study\Python\Test1\test.txt',mode='w',encoding='UTF-8')
result = f.write('学习python 20240223')
[print(result)]
f.close()
17
1.1.2.2. .writelines()****
覆盖写入,写入的时候不会换行,所有数据都会写在同一行
需要换行使用\n
f = open(file=r'E:\Study\Python\Test1\test.txt', mode='w', encoding='UTF-8')
data = ('Day01', 'Day02', 'Day03')
result = f.writelines((data))
f.close()
1.2. 光标操作****
Seek()
参数:偏移量即开始位置,单位:字节数
1. Offset:行,默认为0
2. Whence:列,默认为0
3. 默认都为0
(1) 0:从文件开头开始算起
(2) 1:从光标当前位置开始算起
(3) 2:从文件末尾开始算起
f = open(file=r'E:\Study\Python\Test1\test.txt', mode='w+', encoding='UTF-8')
data = ('Day01', 'Day02', 'Day03')
result = f.writelines((data))
f.seek(0)
read = f.read()
print(read)
f.close()
Day01Day02Day03
1.3. .flush()文件保存****
写文件的时候都是往内存区域去写,等程序运行结束之后,就会从内存区写到文件里
将内存里缓冲区域的文件写入到文件保存
使用场景:大量写入数据的时候,建议一边写一边保存,防止数据丢失
f = open(file=r'E:\Study\Python\Test1\test.txt', mode='w+', encoding='UTF-8')
num = 0
while num < 30:
print('test')
f.write('hello python\n')
f.flush()
f.close()
1.4. 上下文管理器****
With open自动关闭
with open(file=’文件地址’, mode='w+', encoding='UTF-8')as file:
pass
相关文章:
python学习笔记——文件操作
1. 文件操作**** 1.1. open()函数**** 参数: 1. File:需要打开的文件 2. Mode:读、写、读写 (1) r:只读 (2) w:只写文件(覆盖) (3) a:只写文件(追加) …...
滑动窗口用法
文章目录 1. 长度最小的子数组(模板)2. 无重复字符的最长字串3. 最小覆盖字串4. 加油站5. 替换字串得到平衡字符串 1. 长度最小的子数组(模板) 题目分析 直接用步骤分析示例1,[]表示窗口,min_length表示满…...
智慧港口整体解决方案(一)
前言 智慧港口建设对创新驱动、转型发展具有重要推动作用加快推动第五代港口发展进程,成为当今港口转变发展方式、 提升企业综合竞争力的主潮流。智慧港口是港口未来发展主要方向 物联网、云计算技术发展智慧港口是物联网、移动互联网、云计算、人工智能等高新 技术与港口功能的…...
ubuntu如何限制系统日志大小?
ubuntu中的系统日志文件件如不及时清理,时间长了会占用硬盘的空间,如下所示: /var/log/journal/4321d62ad63d44cbbc4dff3b6e282b26/system9f5b4d5081d24b319f8b4677cf673a97-0000000000184ca6-00061412655a5a79.journal: 128M /var/log/journ…...
【Linux】线程概念及线程互斥
目录 线程概念 线程优点 线程缺点 线程异常 线程系统编程接口 线程创建及终止 线程等待 使用线程系统接口封装一个小型的C线程库并实现一个抢票逻辑 线程互斥 互斥量的接口 线程互斥实现原理 使用系统加锁接口封装LockGuard 实现自动化加锁 线程安全和可重入函数 …...
测试需求分析
测试需求是什么? --需求文档 测试需求主要解决**“测什么”的问题,一般来自需求规格说明书中原始需求 测试需求应全部覆盖已定义的业务流程,以及功能和非功能**方面的需求 功能:基本用户需求–优先 非功能:界面&#…...
Qt 翻译工具:使用 tr() 函数实现多语言支持
引言 在开发跨平台应用程序时,支持多语言是一个常见需求。Qt 提供了一套完整的国际化工具,帮助开发者轻松实现应用程序的本地化。本文将介绍如何在 Qt 中使用 tr() 函数进行翻译,并总结一些常见的困难和解决方法。 使用 tr() 函数进行翻译 …...
使用 kustomize 对 kubernetes 对象进行声明式管理
补丁实战 策略合并补丁 基准文件:/test/bases/deploy.yml apiVersion: apps/v1 kind: Deployment metadata:namespace: sharkname: my-nginx spec:selector:matchLabels:run: my-nginxreplicas: 2template:metadata:labels:run: my-nginxspec:containers:- name:…...
Android Studio开发学习(六)———TableLayout(表格布局)、FrameLayout(帧布局)
目录 前言 一、Tablelayout (一)Tablelayout的相关简介 (二)TableLayout使用方法 1. 当TableLayout下面写控件、则控件占据一行的大小。(自适应一行,不留空白) 2.多个组件占据一行,则配合TableRow实现…...
c++ override关键字
在C11及之后的标准中,override是一个关键字,用于表示派生类中的成员函数覆盖了基类中的虚函数。 使用override关键字的好处在于它提供了一种明确的方式来指示编译器:该函数打算覆盖基类中的虚函数。如果使用了override关键字,但该…...
卫星影像联合无人机实现农业保险全生命周期监管监测
随着科技的进步,农业保险监管系统的发展日新月异。特别是近年来,随着卫星技术与无人机技术的结合,为农业保险监管系统带来了前所未有的革新。本文将深入探讨如何利用卫星与无人机方案构建高效的农业保险监管系统,并结合实例进行说…...
ChatGLM2-6B_ An Open Bilingual Chat LLM _ 开源双语对话语言模型
ChatGLM2-6B_ An Open Bilingual Chat LLM _ 开源双语对话语言模型 文章目录 ChatGLM2-6B_ An Open Bilingual Chat LLM _ 开源双语对话语言模型一、介绍二、使用方式1、环境安装2、代码调用3、从本地加载模型 4、API 部署 三、低成本部署1、模型量化2、CPU 部署3、Mac 部署4、…...
JAVA的学习日记DAY6
文章目录 数组例子数组的使用数组的注意事项和细节练习数组赋值机制数组拷贝数组反转数组添加 排序冒泡排序 查找多维数组 - 二维数组二维数组的使用二维数组的遍历杨辉三角二维数组的使用细节和注意事项练习 开始每日一更!得加快速度了! 数组 数组可以…...
Grafana告警(邮件)自定义模板配置
一年前给客户部署配置过grafana,告警配置也是用的原始的,客户在使用过程中只需要一些核心点信息,想要实现这个就需要用Grafana的自定义告警模板以及编辑邮件模板。 通知模板 模板信息的配置中查阅了相关资料,自己组装了一套&…...
大话设计模式——六大基本设计原则(SOLID原则)
设计模式 定义:软件开发中,在特定上下文中解决一类常见问题的被证明为有效的最佳实践。可供其他开发者重复使用解决相似问题。 好处: 提高代码的可重用性,减少重复代码。提高代码的可维护性,使代码更易于理解和修改。…...
Qt | Q_PROPERTY属性和QVariant 类
一、属性基础 1、属性与数据成员相似,但是属性可使用 Qt 元对象系统的功能。他们的主要差别在于存取方式不相同,比如属性值通常使用读取函数(即函数名通常以 get 开始的函数)和设置函数(即函数名通常以 set 开始的函数)来存取其值,除此种方法外,Qt 还有其他方式存取属性值…...
力扣207.课程表
你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 bi 。 例如…...
十五届web模拟题整理
模拟赛一期 1.动态的Tab栏 请在 style.css 文件中补全代码。 当用户向下滚动的高度没有超过标题栏(即 .heading 元素)的高度时,保持 Tab 栏在其原有的位置。当滚动高度超过标题栏的高度时,固定显示 Tab 栏在网页顶部。 /* TODO…...
ubuntu20.04 安裝PX4 1.13
step1_install_depenences.sh #!/bin/bash #install gazebo 11 #install protobuf 3.19.6python3 -m pip install --upgrade pip python3 -m pip install --upgrade Pillow# 將 empy 的版本調整爲3.3.4 pip3 uninstall empy pip3 install empy3.3.4sudo apt-get update sudo ap…...
大型网站系统架构演化
大型网站质量属性优先级:高性能 高可用 可维护 应变 安全 一、单体架构 应用程序,数据库,文件等所有资源都在一台服务器上。 二、垂直架构 应用和数据分离,使用三台服务器:应用服务器、文件服务器、数据服务器 应用服…...
Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...
基于数字孪生的水厂可视化平台建设:架构与实践
分享大纲: 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年,数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段,基于数字孪生的水厂可视化平台的…...
2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
