Python文件的使用
本章导言
什么是数据格式化
前言:
-学完本章,看待数据会有一种规范/格式化的视角
-方法论:从Python角度理解文件和数据表示
-实践能力:学会编写带有文件输入输出的程序
1. 文件的使用
文件的类型
-文件是数据的抽象和集合,可理解为存储在辅助存储器上的数据序列,是数据存储的一种形式。
展现形态:文本文件和二进制文件(本质上,存储都以二进制形式)
-文本文件:由单一特定编码组成的文件,如UTF-8编码
由于存在编码,文本文件也被看成是存储着的长字符串。
举例: .txt .py
-二进制文件:直接由比特0和1组成,没有统一字符编码
01根据预定义格式进行结构组织
举例: .png .avi
例
#文本形式打开文件
bf1 = open("E:\code\python\821\File.txt","rt",encoding="utf-8")
print(bf1.readline())
bf1.close()
#二进制形式打开文件
bf2 = open("E:\code\python\821\File.txt","rb")
print(bf2.readline())
bf2.close()
输出
2. 文件的打开和关闭
文件处理的步骤:打开-操作-关闭
-打开:让文件从存储状态转化为占用状态 a = open( , )
-关闭:让文件从占用状态转化为打开状态 a.close( )
2.1 文件的打开
<变量名> = open(<文件名>,<打开模式>)
参数1-文件的路径和名称(源文件同目录可省路径)
参数2-文本还是二进制,读还是写
打开之后,文件用一个叫做文件句柄的抽象变量来表示。
注:路径中一般用斜杠/或双反斜杠\来替代反斜杠\(python中的转义符)
-文件打开模式(7种)
读写相关 r/w/x/a 打开文件方式相关b/t
例
如果不给任何参数,默认为“rt” -文本形式,只读模式
f = open(“f.txt”,”w”) -文本形式,覆盖写模式
f = open(“f.txt”,”a+”) -文本形式,追加写模式,同时文件可读
f = open(“f.txt”,”b”) -二进制形式,只读模式
2.2 文件关闭
<变量名>.close()
如果不关闭会怎样?
程序运行过程中文件一直是打开状态,程序退出时会被解释器关闭。
3. 文件内容的读取
-读文件函数
① a.read(size=-1) -读入全部内容,如果给出参数,读入前size长度
例
f = open("E:/code/python/821/File.txt","rt",encoding="utf-8")
s = f.read(2)
print(s)
输出
"中
② a.readline(size=-1) -读入一行内容,如果给出参数,读入该行前size长度
③ a.readlines(hint) -读入文件的所有行,以每行(视为字符串)为元素形成列表,如果给出参数,读入前hint行
应用
(1) 文件的全文本操作,即遍历文件的全部信息
方法一:
fname = input("请输入要打开的文件名称:")
fo = open(fname,"r")
txt = fo.read()
#对全文txt进行处理
fo.close()
特点:一次读入,统一处理
弊端:文本文件体量过大,会耗费很多资源
方法二:
fname = input("请输入要打开的文件名称:")
fo = open(fname,"r")
txt = fo.read(2)
while txt != "":#对txt进行处理txt = fo.read(2)
fo.close()
特点:按数量读入,逐步处理
(2) 逐行遍历文件
方法一:
将所有文件的行一次性地读入内存
fname = input("请输入要打开的文件名称:")
fo = open(fname,"r")
for line in fo.readlines():print(line)
fo.close()
方法二:
fname = input("请输入要打开的文件名称:")
fo = open(fname,"r")
for line in fo:print(line)
fo.close()
4. 将数据写入文件
2个方法和1个辅助函数
文件操作指针会随着每次函数调用的变化而变化
例
fo = open("E:\code\python\821\output.txt","w+")
ls = ["中国","法国","美国"]
fo.writelines(ls)
for line in fo:print(line)
fo.close()
没有任何输出
修改:在fo.writelines(ls)后面加 fo.seek(0)
新输出
中国法国美国
出处:北理工Python慕课
Python文件的使用相关推荐
- 在pycharm中无法引入同一目录下的python文件
问题 同一目录下存在以下两个python文件: 1. app.py 2. forms.py 现在我希望在app.py中引入forms.py的某个函数,但是出现如下情况: 主要表现在: 函数标红 无法自 ...
- 关于python文件读写小结
读文件 打开一个文件用open()方法(open()返回一个文件对象,它是可迭代的): >>> f = open('test.txt', 'r') r表示是文本文件,rb是二进制文件 ...
- Python Qt GUI设计:将UI文件转换为Python文件的三种妙招(基础篇—2)
目录 1.创建项目 2.将.ui文件生成.py文件 2.1.Eric 6编译 2.2.Python命令行编译 2.3.脚本编译 3.界面.逻辑分离思想 在开始本文之前提醒各位朋友,Python记得安装 ...
- python 文件追加写入_Python写入文件–解释了打开,读取,追加和其他文件处理功能
python 文件追加写入 欢迎 (Welcome) Hi! If you want to learn how to work with files in Python, then this arti ...
- Python 文件 close() 方法
描述 Python 文件 close() 方法用于关闭一个已打开的文件.关闭后的文件不能再进行读写操作, 否则会触发 ValueError 错误. close() 方法允许调用多次. 当 file 对 ...
- python文件和目录
# -*- coding: utf-8 -*-import osdef printFile(rootDir):allFiles = os.listdir(rootDir) #列出文件夹下所有文件和目录 ...
- 深度学习运行python文件,出现跨路径搜索其他module,怎么解决?
在运行的目标python文件顶部,添加需要用的模块的搜索路径: 1)import sys, os sys.path.append(os.pardir) #添加的路径是,待运行目标python文件所在文 ...
- 第九课.Python文件操作
Python文件读写 最基本的,通过open返回文件句柄(文件对象),将文件读入内存: #f是一个文件对象 f=open('./sample.txt') data=f.read()#read读取所有内 ...
- sys.argv[n] (终端运行python文件第n个参数) 在 pycharm 中的应用
sys.argv[n] (终端运行python文件第n个参数) 在 pycharm 中的应用 打开pycharm --> Run --> Edit Configurations --> ...
- python文件信息排序_python文件排序的方法总结
在python环境中提供两种排序方案:用库函数sorted()对字符串排序,它的对象是字符:用函数sort()对数字排序,它的对象是数字,如果读取文件的话,需要进行处理(把文件后缀名'屏蔽'). (1 ...
最新文章
- bigdecimal为0 xml不走_爱情不能够接受谎言的星座,天蝎座容忍度为0,发现将失去彼此...
- QT 的信号与槽机制介绍
- 使用最新目标跟踪框mmtracking实现自己的目标跟踪项目
- 网络管理经验谈:初级网管的网络安全
- 经典C语言程序100例之三零
- 去掉(不显示)关闭QQ游戏后跳出的广告
- ES6对象(2):面向对象与类
- P2522-[HAOI2011]Problem b【莫比乌斯反演】
- 我用Python帮学校写了一款图书管理系统!教导员居然请我吃饭
- 转换运行时获取DTP语义组
- MVVM 实战之计算器
- Matlab图像标题_title
- 清除远程桌面的连接记录
- ubuntuv20启动界面美化_光影魔术手---用‘傻瓜软件’美化图像
- 半导体随机存储器(random access memory)
- 解决视频资源音乐资源在Android模拟器中不能播放的问题
- sketch导出html可以跳转,Sketch导入、导出功能说明及技巧
- 【理解】ORB特征提取与ORBSLAM特征匹配简要剖析
- switch日版有中文吗_原神Switch日版可以玩吗
- Echarts的常用api