python入门,文件的编码,读取,写入,追加

目录

1.文件的编码

2.文件的读取

1.open()函数打开文件

2.rede()读取文件

3.readlines()方法

4.readline()方法

5.for循环读取

 3.文件的关闭

withopen语法

4.文件的写入

1.write写入字符串

2.flush

5.文件的追加


1.文件的编码

计算机只认得0和1,文件的编码即一种对应方式,比如说“小红”在某一种编码方式中可能对应的是“0100111”而在另一种编码方式中对应的则是“10101100”

目前UTF-8是全球通用的编码格式

2.文件的读取

1.open()函数打开文件

open(name,mode,encoding)

name是要打开的文件的文件名的字符串

mode是打开的模式,有只读,写入,追加

r为只读,这是默认模式

w为写入,如果文件存在则打开文件编辑,原有内容会被删除,如果文件不存在,则会新建一个文件

a用于追加,如果文件存在则会打开文件,将文字追加在原有文件之后,如果文件不存在,则会创建一个文件并且写入

encoding是编码格式,一般为UTF-8

f = open("D:/test.txt","r",encoding = "UTF-8")

2.rede()读取文件

文件对象.rede(num)

num表示要读取的长度,单位为字节,如果没有传入num默认读取文件中的所有数据

print(f.read())

3.readlines()方法

一次读取一行文件,读取文件的全部行,返回的是一个列表

print(f.readlines())

4.readline()方法

一次只读取一行 

print(f.readline())

5.for循环读取

for line in f:print(f"每一行数据是{line}")

 3.文件的关闭

f.close()

用来关闭文件,结束对这个文件的占用

withopen语法

with open("D:/test.txt","r",encoding = "UTF-8") as f:f.readlines()

在操作完成后会自动进行close,防止遗忘了close

4.文件的写入

直接调用write并不会直接写入文件当中,而是会存在缓冲区中,当调用flush函数时,会一次性将缓冲区中的内容写入文件中

采用这样的方法是为了提升效率,避免频繁操作硬板,导致效率下降

1.write写入字符串

f.write("hello world")

2.flush

f.flush()

5.文件的追加

只需要将r和w模式,替换为a模式 ,再进行write操作,在此模式下输入的字符串会直接写入到文件中的文字后

注意:

使用write之后一定要flush才会真正的存入

可以使用“\n”来进行换行的操作

f = open("D:/test.txt","a",encoding = "UTF-8")

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

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

相关文章

基于华为MRS3.2.0实时Flink消费Kafka落盘至HDFS的Hive外部表的调度方案

文章目录 1 Kafka1.1 Kerberos安全模式的认证与环境准备1.2 创建一个测试主题1.3 消费主题的接收测试 2 Flink1.1 Kerberos安全模式的认证与环境准备1.2 Flink任务的开发 3 HDFS与Hive3.1 Shell脚本的编写思路3.2 脚本测试方法 4 DolphinScheduler 该需求为实时接收对手Topic&a…

如何使用callable和future创建异步任务?在Java中如何管理依赖?

在Python中,可以使用concurrent.futures模块中的Callable和Future类来创建异步任务。以下是一个简单的例子: import concurrent.futures# 定义一个可调用对象(Callable)def long_running_task(n):return n * n# 创建一个线程池执行…

使用vscode在wsl2中配置clangd环境

在vscode中安装这三个插件(clangd需要科学上网或者从VSIX安装) 之后创建一个空目录并进去。 使用快捷键ctrlshiftp,输入命令 Cmake:Quick Start 根据步骤选择。注意在创建CMakeLists.txt这一步选择跳过,直接输入enter&#xff0c…

c# 释放所有嵌入资源, 到某个本地文件夹

版本号 .net 8 代码 using System.Reflection;namespace Demo;internal class Program {static void Main(string[] args){// 获取当前 执行exe 的目录 / 当前命令行所在的目录 var currentDir Directory.GetCurrentDirectory();Console.WriteLine(currentDir);Extract…

Linux 驱动开发基础知识——认识LED驱动程序 (二)

个人名片: 🦁作者简介:一名喜欢分享和记录学习的在校大学生 🐯个人主页:妄北y 🐧个人QQ:2061314755 🐻个人邮箱:2061314755qq.com 🦉个人WeChat:V…

Linux之进程间通信(管道)

目录 一、进程间通信 1、进程间通信的概念 2、进程间通信的目的 3、进程间通信的分类 二、管道 1、管道基本介绍 2、匿名管道 3、命名管道 一、进程间通信 1、进程间通信的概念 什么是进程间通信? 我们在学习了进程的相关知识后,知道&#xff…

2024 CKA 题库 | 12、查看 pod 日志

不等更新题库 文章目录 12、查看 pod 日志题目:考点:参考链接:解答:检查 12、查看 pod 日志 题目: 设置配置环境: [candidatenode-1] $ kubectl config use-context k8sTask 监控 pod foo 的日志并: 提取与错误 RLIMIT_NOFILE 相对应的日志…

SpringSecurity(07)——JWT整合

依赖配置 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency><groupId>org.springframework.boot</groupId><artifactId>s…

树的一些经典 Oj题 讲解

关于树的遍历 先序遍历 我们知道 树的遍历有 前序遍历 中序遍历 后序遍历 然后我们如果用递归的方式去解决&#xff0c;对我们来说应该是轻而易举的吧&#xff01;那我们今天要讲用迭代&#xff08;非递归&#xff09;实现 树的相关遍历 首先呢 我们得知道 迭代解法 本质上也…

C语言:函数指针的使用

在C语言中&#xff0c;函数指针是指向函数的指针变量。它可以存储函数的地址&#xff0c;使得可以通过该指针来调用函数。以下是函数指针的基本概念和用法&#xff1a; 一、基本概念&#xff1a; 声明函数指针&#xff1a; returnType (*pointerName)(parameterTypes); 这里 r…

13.1 一个简单的基类

们在类中添加新特性。 继承是种非常好的概念,其基本实现非常简单。但要对继承进行管理,使之在所有情况下都能正常 工作,则需要做…些调整。本章将介绍继承简单的一面和复杂的一面。 - 13.1 一个简单的基类 从个类派生出另一个类时,原始类称为基类,继承类称为派生类。为说明继…

浅析云服务oss/obs/cos对象存储安全攻防

文章目录 前言云存储服务1.1 初识对象存储1.2 腾讯云COS桶1.3 公开读取风险 对象存储桶风险2.1 Bucket Object遍历2.2 Bucket 名称的爆破2.3 Bucket ACL可读写2.4 任意写与文件覆盖2.5 Bucket 域名的接管 AccessKey凭证泄露3.1 行云管家接管主机3.2 Github泄露AK/SK3.3 客户端程…

【题目】2023年国赛信息安全管理与评估正式赛任务书-模块2

全国职业院校技能大赛 高等职业教育组 信息安全管理与评估 任务书 模块二 网络安全事件响应、数字取证调查、应用程序安全 比赛时间及注意事项 本阶段比赛时长为180分钟&#xff0c;时间为13:30-16:30。 【注意事项】 比赛结束&#xff0c;不得关机&#xff1b;选手首先…

Chatgpt+Comfyui绘图源码说明及本地部署文档

其他文档地址&#xff1a; ChatgptComfyui绘图源码运营文档 ChatgptComfyui绘图源码线上部署文档 一、源码说明 1、源码目录说明 app_home&#xff1a;app官网源码chatgpt-java&#xff1a;管理后台服务端源码、用户端的服务端源码chatgpt-pc&#xff1a;电脑网页前端源码cha…

两条链表相同位数相加[中等]

优质博文IT-BLOG-CN 一、题目 给你两个非空的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照逆序的方式存储的&#xff0c;并且每个节点只能存储一位数字。请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。你可以假设除了数字0之外&#xff0c;这…

【征服Redis12】redis的主从复制问题

从现在开始&#xff0c;我们来讨论redis集群的问题&#xff0c;在前面我们介绍了RDB和AOF两种同步机制&#xff0c;那你是否考虑过这两个机制有什么用呢&#xff1f;其中的一个重要作用就是为了集群同步设计的。 Redis是一个高性能的键值存储系统&#xff0c;广泛应用于Web应用…

【React】Redux的使用详解

文章目录 Redux的三大原则Redux官方图react-redux使用 1、创建store管理全局状态​ 2、在项目index.js根节点引用 3、 在需要使用redux的页面或者组件中&#xff0c;通过connect高阶组件映射到该组件的props中 redux中异步操作如何使用redux-thunkcombineReducers函数 Re…

数据结构和算法笔记4:排序算法-归并排序

归并排序算法完全遵循分治模式。直观上其操作如下&#xff1a; 分解&#xff1a;分解待排序的n个元素的序列成各具n/2个元素的两个子序列。解决&#xff1a;使用归并排序递归地排序两个子序列。合并&#xff1a;合并两个已排序的子序列以产生已排序的答案。 我们直接来看例子…

Flutter 与 Android原生 相互通信:BasicMessageChannel、MethodChannel、EventChannel

前言 本文主要讲解&#xff0c;使用不同的 Channel 让 Flutter 和 Android原生 进行通信&#xff0c;由于只是讲解两端通信&#xff0c;所以可视化效果不好&#xff1b; 不过我写了一篇专门讲解 Flutter 嵌入 Android原生View的文章 Flutter 页面嵌入 Android原生 View-CSDN…

小程序使用echarts图表-雷达图

本文介绍下小程序中如何使用echarts 如果是通过npm安装&#xff0c;这样是全部安装的&#xff0c;体积有点大 我这边是使用echarts中的一个组件来实现的&#xff0c;下边是具体流程&#xff0c;实际效果是没有外边的红色边框的&#xff0c;加红色边框的效果是这篇说明 1.echa…