文件操作
一、概述

文件的类型
文件的打开和关闭
文件内容的读取
数据的文件写入

二、文件的类型
2.1 文件的理解
文件是数据的抽象和集合
文件是存储在辅助存储器上的数据序列
文件是数据存储的一种形式
文件展现形态:文本文件和二进制文件
文本文件 vs. 二进制文件
文件文件和二进制文件只是文件的展示方式
本质上,所有文件都是二进制形式存储
形式上,所有文件采用两种方式展示

2.2 文本文件
文件是数据的抽象和集合
由单一特定编码组成的文件,如UTF-8编码
由于存在编码,也被看成是存储着的长字符串
适用于例如:.txt文件、.py文件等
2.3 二进制文件
文件是数据的抽象和集合
直接由比特0和1组成,没有统一字符编码
一般存在二进制0和1的组织结构,即文件格式
适用于例如:.png文件、.avi文件等
2.4 文本文件 vs. 二进制文件
“中国是个伟大的国家!”
文本形式:中国是个伟大的国家!
二进制形式:b’\xd6\xd0\xb9\xfa\xca\xc7\xb8\xf6\xce\xb0\xb4\xf3\xb5\xc4\xb9\xfa\xbc\xd2\xa3\xa1’
2.5 f.txt文件保存
f.txt文件保存: “中国是个伟大的国家!”

文本形式打开文件

tf = open(“f.txt”, “rt”)
print(tf.readline())
tf.close()

二进制形式打开文件

bf = open(“f.txt”, “rb”)
print(bf.readline())
bf.close()
三、文件的打开和关闭
3.1 文件的打开关闭
文件处理的步骤: 打开-操作-关闭

读文件

a.read(size)
a.readline(size)
a.readlines(hint)

写文件

a.write(s)
a.writelines(lines)
a.seek(offset)

3.2 文件的打开

3.3 文件路径
windows环境下 路径是用\来表示子文件路径如"D:\PYE\f.txt"
python语言里面\是转译符的意思,所以可以用\来表示\号:如"D:\PYE\f.txt"
文件路径和名称:“D:/PYE/f.txt” 或 “D:\PYE\f.txt”
源文件同目录可省路径:"./PYE/f.txt" 或 “f.txt”

打开模式
文件的打开模式 描述
‘r’ 只读模式,默认值,如果文件不存在,返回FileNotFoundError
‘w’ 覆盖写模式,文件不存在则创建,存在则完全覆盖
‘x’ 创建写模式,文件不存在则创建,存在则返回FileExistsError
‘a’ 追加写模式,文件不存在则创建,存在则在文件最后追加内容
‘b’ 二进制文件模式
‘t’ 文本文件模式,默认值
‘+’ 与r/w/x/a一同使用,在原功能基础上增加同时读写功能

f = open(“f.txt”) 文本形式、只读模式、默认值,等于f = open(“f.txt”,“t”)
f = open(“f.txt”, “rt”) 文本形式、只读模式、同默认值
f = open(“f.txt”, “w”) 文本形式、覆盖写模式
f = open(“f.txt”, “a”) 追加写模式,文件不存在则创建,存在则在文件最后追加内容,不能读取
f = open(“f.txt”, “a+”) 文本形式、追加写模式+ 读文件
f = open(“f.txt”, “x”) 文本形式、创建写模式,存在则返回FileExistsError
f = open(“f.txt”, “b”) 二进制形式、只读模式
f = open(“f.txt”, “wb”) 二进制形式、覆盖写模式

3.5文件的关闭
<变量名>.close() # 变量名为文件句柄
当未执行<变量名>.close() 是,文件是一直处于打开状态
当程序正常关闭时,<变量名>.close() ,回被自动调用,尽量要记住添加上关闭文件。
3.6 文件使用

文本形式打开文件

tf = open(“f.txt”, “rt”)
print(tf.readline())
tf.close()

二进制形式打开文件

bf = open(“f.txt”, “rb”)
print(bf.readline())
bf.close()

四、文件内容的读取
操作方法 描述
变量名 = open(“f.txt”, “rb”) #f.txt里面仅有一条数据: 中国是一个伟大的国家!
.read(size=-1) 读入全部内容,如果给出参数,读入前size长度,s = f.read(2) # 获取前两个元素:中国
.readline(size=-1) 读入一行内容,如果给出参数,读入该行前size长度,s = f.readline() # 获取第一行内容#中国是一个伟大的国家!
.readlines(hint=-1) 读入文件所有行,以每行为一个元素形成列表如果给出参数,读入前hint行,s = f.readlines(hint=1)#读取前一行 # [‘中国是一个伟大的国家!’]
4.1 文件的全文本操作
4.1.1 遍历全文本:方法一
一次读入,统一处理
fname = input(“请输入要打开的文件名称:”)
fo = open(fname,“r”)#‘r’ 只读模式,默认值
txt = fo.read()#读取所有

对全文txt进行处理

fo.close()

4.1.2 遍历全文本:方法二

按数量读入,逐步处理

fname = input(“请输入要打开的文件名称:”)
fo = open(fname,“r”)
txt = fo.read(2)#读取两个字节
while txt != “”:#判断不为空则可以进行处理
# 对txt进行处理
txt = fo.read(2)
#添加处理方法
<><><>
fo.close()

4.2 文件的逐行操作
4.2.1 逐行遍历文件:方法一

一次读入,分行处理
fname = input(“请输入要打开的文件名称:”)
fo = open(fname,“r”)
for line in fo.readlines():#读取了所有行,然后对所有行遍历
print(line)
fo.close()

4.2.2 逐行遍历文件:方法二
分行读入,逐行处理
fname = input(“请输入要打开的文件名称:”)
fo = open(fname,“r”)
for line in fo:#对所有行遍历,但是每次只读取一行
print(line)
fo.close()

五、数据的文件写入
操作方法 描述
.write(s) 向文件写入一个字符串或字节流,f.write(“中国是一个伟大的国家!”)
.writelines(lines) 将一个元素全为字符串的列表写入文件,ls = [“中国”, “法国”, “美国”];f.writelines(ls) # 把列表的数据拼接成一个字符串,写入:中国法国美国
.seek(offset) 改变当前文件操作指针的位置,
offset含义如下:
.seek(0) 回到文件开头;
.seek(1) 在当前位置;
.seek(2) 文件结尾;

写入一个字符串列表,没有指定指针
fo = open(“output.txt”,“w+”)
ls = [“中国”, “法国”, “美国”]
fo.writelines(ls)
for line in fo:#没法向下遍历,因为这时指针在最后位置
print(line) # (没有任何输出)
fo.close()

写入一个字符串列表,指定指针
fo = open(“output.txt”,“w+”)
ls = [“中国”, “法国”, “美国”]
fo.writelines(ls)
fo.seek(0)#把指针回到开头位置
for line in fo:
print(line) # 中国法国美国
fo.close()

六、单元小结

文件的使用方式:打开-操作-关闭
文本文件&二进制文件,open( , )和.close()
文件内容的读取:.read() .readline() .readlines()
数据的文件写入:.write() .writelines() .seek()

python文件操作基础(复习)相关推荐

  1. Python零基础速成班-第8讲-Python文件操作File IO、高级文件处理模块shutil、CSV、JSON、多线程基础

    Python零基础速成班-第8讲-Python文件操作File I&O.高级文件处理模块shutil.CSV.JSON.多线程基础 学习目标 文件操作File I/O 高级文件处理模块shut ...

  2. Python基础——第八章:Python文件操作

    前言 本文是根据黑马程序员Python教程所作之笔记,目的是为了方便我本人以及广大同学们查漏补缺. 不想做笔记直接来我的频道.当然啦,自己的笔记才是最好的哦! PS:感谢黑马程序员! 教程链接:黑马程 ...

  3. 【Python】学习笔记总结3(Python文件操作)

    文章目录 三.Python文件操作 1.打开`open('文件名','打开模式')` 2.写操作 3.读操作 4.With上下文管理对象 小结 案例 5.文件定位 三.Python文件操作 1.打开o ...

  4. 不是python文件操作的相关函数_从零开始学Python(七):文件存储I/O流和异常捕捉

    这两天在搞小程序开发,耽搁了一下更新的进度,今天补上.一个完整的前端程序肯定离不开数据存储和网络两个模块,今天我们就先来讲讲python中的一种常见数据存储:文件存储!~! 文件存储(I/O操作) 何 ...

  5. 看了这篇,你也是Python文件操作高手

    Python文件操作 文本文件和二进制文件 文件操作相关模块概述 创建文件对象 open() 文本文件的写入 基本的文件写入操作 常用编码介绍 ASCII ISO8859-1 GB2312,GBK,G ...

  6. python 文件操作 和 标准库

    python 文件操作 一. 文件作用 二. 文件读写操作 文件操作流程 1. 读取文件数据 ⑴ 打开文件 ⑵ 读取文件内容 ⑶关闭文件 2. 写入或追加写入数据 ⑴ 打开文件 ⑵ 写入文件内容 ⑶关 ...

  7. Python文件操作详解(一)

    今天继续给大家介绍Python相关知识,本文主要内容是Python文件操作详解. 一.Python文件处理简介 使用Python可以编写程序处理文件,Python可以处理的文件值得是任何存储在辅助存储 ...

  8. Python文件操作相关的知识笔记总结

    python文件操作相关知识 1.文件操作 路径相关 上下文管理 文件的打开模式 文件操作的常见功能 学前知识背景回顾: 字符串类型(str):程序中表示文字信息,本质是unicode编码中的二进制. ...

  9. 初学Python——文件操作第二篇

    前言:为什么需要第二篇文件操作?因为第一篇的知识根本不足以支撑基本的需求.下面来一一分析. 一.Python文件操作的特点 首先来类比一下,作为高级编程语言的始祖,C语言如何对文件进行操作? 字符(串 ...

最新文章

  1. python绘制三维曲面图-Python中使用Matplotlib绘制3D图形示例
  2. 论文笔记:DeepID2
  3. 计算机网络通信技术课程的基本知识点内容,河北《计算机网络与通信(2339)》自学考试大纲...
  4. Java JUC工具类--CountDownLatch
  5. ASP.NET AJAX(开发代号Atlas)重要参考资源大收集
  6. Java Web开发入门 - 第2章 HTTP协议单元作业
  7. curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
  8. php学习redis买什么书,redis
  9. oracle任务间隔,Oracle定时任务时间间隔
  10. 什么样的固定资产管理系统才能满足企业需求
  11. 硬盘容量和计算机容量的换算,t和g的换算(硬盘容量G跟T的换算)
  12. [高通MSM8953_64][Android10]user版本默认获取root权限
  13. 服务器共享文件设成禁止删除,服务器共享文件夹权限 禁止删除共享文件方法...
  14. 博士论文-基于生成对抗网络的图像合成-阅读笔记
  15. 暗影精灵开机只亮电源灯_为什么只有惠普暗影精灵看到了电竞人群细分诉求
  16. 符号表工具addr2line
  17. Qt 如何实现的 Meta Object
  18. word页眉/页脚中插入页码及页码总数(自动变化)
  19. Ubuntu 更换国内源
  20. 大前端dux主题更新至5.1,新增9个功能,修复7个bug

热门文章

  1. [工具向]__关于androidstudio工具使用过程中学习到的一些知识点简记
  2. php7 on winxp 支持的模块
  3. bzoj 2131: 免费的馅饼【dp+树状数组】
  4. iOS:动画(18-10-15更)
  5. 【转】Dalvik虚拟机的启动过程分析
  6. 周鸿祎重申360不依靠弹窗广告盈利 增值服务是主要模式
  7. hdu(杭电oj)输入输出练习题目总结
  8. bootstrap所需的js/css文件本地的jsp页面中的引入
  9. 有关objc中的单例
  10. 九度OJ 1048:判断三角形类型