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. SpringMVC基础原理

    1.拦截所有请求到DispatcherServlet 2.去寻找映射器 3.根据处理器适配器处理业务,返回视图 4.视图解析器解析显示视图

  2. Java学习day22

    今天跟着视频学习了JScroll面板,图片按钮以及单多选框 这是一个图片按钮程序 很多网站还有软件的图标兼容按钮的功能,如果只有button是无法实现该功能的这时候就需要使用到图标按钮 文本框没有办法 ...

  3. 多线程的创建,并发,静态代理,Lambda表达式

    程序是指令和数据的有序集合,本身没有任何运行的含义.是一个静态的概念. 在操作系统中运行的程序就是进程(Process),如:QQ,播放器,游戏等等. 进程是程序的一次执行过程,是一个动态的概念,是系 ...

  4. nodejs mysql pool 只能插入10条记录或者较少记录

    BEGIN; 解决方案:从连接池获取到的Connection,执行完操作后,必须及时关闭! 即:connection.end(); 使用后发现console有打印出警告信息,大致意思为 end() 方 ...

  5. 甲骨文严查Java授权,换openJDK要避坑

    背景 外媒The Register报道,甲骨文稽查企业用户,近期开始将把过去看管较松散的Java授权加入. 甲骨文针对标准版Java(Java SE)有2种商业授权.2019年4月甲骨文宣布Java ...

  6. ShardingSphere 集成 CosId 实战

    背景 在软件系统演进过程中,随着业务规模的增长 (TPS/存储容量),我们需要通过集群化部署来分摊计算.存储压力. 应用服务的无状态设计使其具备了伸缩性.在使用 Kubernetes 部署时我们只需要 ...

  7. CTF中常见密码学

    前言 参考,我们任课老师的WORD和PPT,结合自己的理解,在结合网上文章的理解. 一.BASE64编码 BASE64编码中,特征和所拥有的字符字母:A-Z a-z;数字:0-9;符号:+ / ,然后 ...

  8. 经过一个多月的等待我有幸成为Spring相关项目的Contributor

    给开源项目尤其是Spring这种知名度高的项目贡献代码是比较难的,起码胖哥是这么认为的.有些时候我们的灵感未必契合作者的设计意图,即使你的代码十分优雅. 我曾经给Spring Security提交了一 ...

  9. Element中Tree树结构组件中实现Ctrl和Shift多选

    在Element中的树结构中, 实现多选功能,首先的是判断有没有按下键盘ctrl和shift按键.但是在Element中的tree组件的左键点击事件是没有提供$event鼠标属性判断的.所以就需要在函 ...

  10. 【数据库】MYSQL如何添加索引

    1.使用ALTER TABLE语句创建索性 应用于表创建完毕之后再添加. 1.1语法 ALTER TABLE 表名 ADD 索引类型 (unique,primary key,fulltext,inde ...