1、文件IO操作:

1)操作文件使用的函数是open()

2)操作文件的模式:

a.r:读取文件

b.w:往文件里边写内容(先删除文件里边已有的内容)

c.a:是追加(在文件基础上写入新的内容)

d.b:二进制的模式写文件

2、open函数执行流程:

1)open操作文件的时候,它的判断逻辑是:

  a.如果是读的模式,文件必须得存在

  b.如果是写得模式,文件不存在,open内部会自动创建一个文件,然后把内容写进去

3、操作文件的步骤:

1)打开文件

2)编辑文件

3)关闭文件

4、w模式的程序案例

1 def open_w():
2 f=open(file="log",mode="w",encode="utf-8")
3 f.write("学习Python")
4 f.close()
5 open_w()

5、多行写入

1 def open_ws():
2 f_read=open(file="log",mode="r",encode="utf-8")
3 f_write=open(file="log.txt",mode="w",encode="utf-8")
4 for item in f_read.readlines(): #按行读取
5 f_write.writes(item) #按行写入
6 f_read.close()
7 f_write.close()
8 open_ws()

6、a模式的程序案例

1 def open_a():
2 f=open(file="log",mode="a",encode="utf-8")
3 f.write("继续加油!")
4 f.close()
5 open_a()

7、r模式的程序案例

1 def readFile():
2 f=open(file="log",mode="r",encoding="utf-8")
3 print(f.read()) #读取文件里边所有内容
4 print(f.readline()) #读取文件里边第一行内容
5 for item in f.readlines():
6 print(item.strip())
7 f.close()
8 readFile()

8、编码和解码

编码:就是把str的数据类型转为bytes的数据类型的过程,使用的关键字是endcode;

解码:把bytes的数据类型转为str的数据类型的过程,使用的关键字是decode。

9、编码和解码的程序

1 str1=“加油!”
2 str1_bytes=str1.encode("utf-8") #编码
3 print(str1_bytes)
4 print(type(str1_bytes))
5
6
7 bytes_str1=str1_bytes.decode("utf-8") #解码
8 print(bytes_str1)
9 print(type(bytes_str1))

10、网站数据解码

1 import requests
2 r=requst.get(url="https://www.gushiwen.cn/")
3 print(r.content.decode("utf-8"))

11、with上下文(可代替close文件的作用)

1 def withFile():
2 with open(f="log.txt",mode="r",encoding="utf-8") as f:
3 print(f.read())
4 withFile()
5
6 def withFile():
7 with open(f="log.txt",mode="w",encoding="utf-8") as f:
8 print(f.write("加油"))
9 withFile()

12、异常管理

 1 try:
2 1/0
3 score=int(input("输入成绩:\n"))
4 except ZeroDivisionError as e: #捕获异常
5 print(e.arg[0]) #获取异常信息
6
7 except Exception as e: #捕获异常
8 print(e.arg[0]) #获取异常信息
9 else:
10 print("try执行正常")
11 finally:
12 print("无论如何我都被输出")

python基础知识-day7(文件操作)的更多相关文章

  1. Python基础知识(八)----文件操作

    文件操作 一丶文件操作初识 ###f=open('文件名','模式',编码): #open() # 调用操作系统打开文件 #mode #对文件的操作方式 #encoding # 文件的编码格式 存储编 ...

  2. python基础知识六 文件的基本操作+菜中菜

    基础知识六 文件操作 ​ open():打开 ​ file:文件的位置(路径) ​ mode:操作文件模式 ​ encoding:文件编码方式 ​ f :文件句柄 f = open("1.t ...

  3. 第三章:Python基础の函数和文件操作实战

    本課主題 Set 集合和操作实战 函数介紹和操作实战 参数的深入介绍和操作实战 format 函数操作实战 lambda 表达式介绍 文件操作函数介紹和操作实战 本周作业 Set 集合和操作实战 Se ...

  4. python基础3之文件操作、字符编码解码、函数介绍

    内容概要: 一.文件操作 二.字符编码解码 三.函数介绍 一.文件操作 文件操作流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 基本操作: #/usr/bin/env ...

  5. Python基础7:文件操作

    [ 文件操作] 1 对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: 昨夜寒蛩不住鸣. 惊回千里梦,已三更. 起来独自绕阶行. 人悄悄,帘外月胧 ...

  6. python学习笔记-(七)python基础--集合、文件操作&函数

    本节内容 1.集合操作 2.文件操作 3.字符编码与转码 4.函数操作 1.集合操作 集合是一个无序的.不重复的数据组合: 1.1 常用操作 它的作用是: 1)自动去重:列表变成集合,自动去重: &g ...

  7. Python自动化 【第三篇】:Python基础-集合、文件操作、字符编码与转码、函数

    1.        集合 1.1      特性 集合是一个无序的,不重复的数据组合,主要作用如下: 去重,把一个列表变成集合实现自动去重. set可以看成数学意义上的无序和无重复元素的集合,因此,两 ...

  8. Python基础-week03 集合 , 文件操作 和 函数详解

    一.集合及其运算 1.集合的概念 集合是一个无序的,不重复的数据组合,它的主要作用如下 *去重,把一个列表变成集合,就自动去重了 *关系测试,测试两组数据之前的交集.并集.差集.子集.父级.对称差集, ...

  9. python基础学习笔记——文件操作

    文件操作 初始文件操作 使用Python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了 根据打开方式的不同能够执行的操作 ...

随机推荐

  1. Oracle双字段约束

    Oracle里有unique约束,意思是该字段唯一. 但如果是两个字段呢? 比如说一个会员等级表 ID NAME POINT DISCOUNT PRIVILEGE MID 1019 普通会员 0 10 ...

  2. Java 18 新功能介绍

    文章持续更新,可以关注公众号程序猿阿朗或访问未读代码博客. 本文 Github.com/niumoo/JavaNotes 已经收录,欢迎Star. Java 18 在2022 年 3 月 22 日正式 ...

  3. 【简单dfs】Bubble Cup 14 - Finals Online Mirror (Unrated, ICPC Rules, Teams Preferred, Div. 2), problem: (J) Robot Factory,

    传送门  Problem - 1600J - Codeforces 题目   题意 给定n行m列, 求每个连通块由多少格子组成,并将格子数从大到小排序输出 对于每个格子都有一个数(0~15),将其转化 ...

  4. ionic系列教程 2 ---- 安装

    开发平台注意点首先,我们需要注意构建Ionic App需要的最低配置:Ionic只支持iOS6 +和Android 4.0 + ,(虽然2.3可以工作,但会有点卡).但是,Android设备众多,可能 ...

  5. 2021.07.19 P2294 狡猾的商人(差分约束)

    2021.07.19 P2294 狡猾的商人(差分约束) [P2294 HNOI2005]狡猾的商人 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 重点: 1.差分约束最长路与最短 ...

  6. SMTP协议解读以及如何使用SMTP协议发送电子邮件

    电子邮件协议中POP3协议用于接收邮件,SMTP协议用于发送邮件.SMTP的全称为Simple Mail Transfer Protocol,也就是简单邮件传输协议,字如其名.   相较于POP3而言 ...

  7. 前后端分离后台管理系统 Gfast v3.0 全新发布

    GFast V3.0 平台简介 基于全新Go Frame 2.0+Vue3+Element Plus开发的全栈前后端分离的管理系统 前端采用vue-next-admin .Vue.Element UI ...

  8. XCTF练习题---MISC---pure-color

    XCTF练习题---MISC---pure-color flag:flag{true_steganographers_doesnt_need_any_tools} 解题步骤: 1.观察题目,下载附件 ...

  9. ReLabel:自动将ImageNet转化成多标签数据集,更准确地有监督训练 | 2021新文

    人工标注数据集中普遍存在噪声,ReLabel能够自动且低成本地将原本的单标签数据集转化为多标签数据集,并且提出配合random crop使用的高效LabelPooling方法,能够更准确地指导分类网络 ...

  10. Java多线程——实现

    "java多线程的实现--几乎都要和java.lang.Thread打交道" 方式一:继承于Thread类 1.创建一个继承于Thread类的子类 2.重写Thread类的run( ...