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. 帝国cms随机调用信息

    我们知道,帝国cms随机调用标签是 [ecmsinfo]1,5,32,0,0,2,0,",'rand()'[/ecmsinfo] 但是这种调用方式在数据量特别大的时候严重影响生成速度,对于中 ...

  2. jsp第一周作业

    环境搭建,运行出来一个JSP页面,显式hello 英文字母表 <%@ page language="java" import="java.util.*" ...

  3. python基础练习题(题目 回文数)

    day21 --------------------------------------------------------------- 实例030:回文数 题目 一个5位数,判断它是不是回文数.即 ...

  4. 基于深度学习的人脸性别识别系统(含UI界面,Python代码)

    摘要:人脸性别识别是人脸识别领域的一个热门方向,本文详细介绍基于深度学习的人脸性别识别系统,在介绍算法原理的同时,给出Python的实现代码以及PyQt的UI界面.在界面中可以选择人脸图片.视频进行检 ...

  5. 数据库-mysql索引篇

    点赞再看,养成习惯,微信搜索「小大白日志」关注这个搬砖人. 文章不定期同步公众号,还有各种一线大厂面试原题.我的学习系列笔记. mysql的索引类型? mysql中有5种索引:普通索引.唯一索引.主键 ...

  6. 用上这个 Mock 神器,让你的开发爽上天!

    ​ 前端的痛苦 作为前端,最痛苦的是什么时候? 每个迭代,需求文档跟设计稿都出来了,静态页面唰唰两天就做完了.可是做前端又不是简单地把后端吐出来的数据放到页 面上就完了,还有各种前端处理逻辑啊. 后端 ...

  7. 【Azure 环境】【Azure Developer】使用Python代码获取Azure 中的资源的Metrics定义及数据

    问题描述 使用Python SDK来获取Azure上的各种资源的Metrics的名称以及Metrics Data的示例 问题解答 通过 azure-monitor-query ,可以创建一个 metr ...

  8. vmware 无法安装 win 10

    因为默认是 UEFI,但我们并没有 UEFI 引导分区,所以需要改成 BIOS

  9. install dns server on ubuntu

    参考 CSDN/Ubuntu环境下安装和配置DNS服务器 在 Ubuntu 上安裝 DNS server Install BIND 9 on Ubuntu and Configure It for U ...

  10. Android源码环境生成Android SDK并导入Adnroid Studio

    1.发现问题 之前使用Repo同步Android源码使用的是下面这条指令,即同步的是分支android-7.1.2_r18的代码 repo init -u https://mirrors.tuna.t ...