栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python中文件的读取操作

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python中文件的读取操作

文件的读写模式

r : 只读模式(默认)

        使用该模式打开的文件只能读取内容不能做其它操作

        r模式下当文件路径不存在时直接报错;当文件路径存在会打开文件等待读取文件内容。

w :只写模式

        使用该模式打开的文件只能写内容不能做其它操作

        此模式下当文件路径存在则会先清空该文件内容 之后等待填写新内容;当文件路径不存在则会自动创建该文件。

a :只追加模式

        使用该模式打开的文件默认在末尾追加新的内容不能做其它操作

        a模式下当文件路径不存在则会自动创建该文件;若路径存在a模式不会清空该文件内容 只在文件末尾等待添加新内容。

with open(r'1.txt',选择r、w、a模式,encoding='utf-8') as f:
拓展知识:

1.with语法支持一次性打开多个文件

with open(r'a.txt','r',encoding = 'utf-8') as a1,open(r'b.txt','r',encoding = 'utf-8') as a2:
# 可以相同的套路打开多个文件

2.补全python语法,不做任何操作

pass        推荐

...             不推荐

if 1 == 1:
    pass
if 1 == 1:
    ...
'''两种方式结果相同但更推荐pass'''

3.单词小技巧

通常情况下在英语单词结尾加上able表示具备该单词描述的能力

readable        具备读取内容的能力

writable          具备填写内容的能力

文件的操作模式 

1.t:文本模式(文本操作的默认模式)

r        rt

w        wt

a        at

 在文本模式下只能对文本文件进行操作;

 文本模式必须指定encoding参数;

 读写都是以字符串为单位;

with open(r'a.txt','r',encoding='utf-8') as f:

2.b:二进制模式

rb

wb

ab

 在二进制模式下能够操作所有类型对文件;

 二进制模式不需要指定encoding参数;

二进制读写文件都是以bytes为单位;

with open(r'a.jbg','rb') as f:
    f.read()
 文件的诸多操作方法

read() :读取文件内所有内容读取完后光标停留在文件末尾,再次读取时则为空
readline() :将文件内容一行一行的读取(用来读取大文件)
readlines() : 一行一行的读取所有的内容并组织成列表返回
readable()  :判断当前文件是否可读
writable()  :判断当前文件是否可写
write() : 填写文件添加内容
writelines() :支持填写容器类型(内部可以存放多个数据值的数据类型)多个数据值
flush() :将内存中的文件数据存储到硬盘(主动按ctrl+s)


 ###今日作业###

1.编写简易版本的拷贝工具
 自己输入想要拷贝的数据路径 自己输入拷贝到哪个地方的目标路径
 任何类型数据皆可拷贝
 ps:个别电脑C盘文件由于权限问题可能无法拷贝 换其他盘尝试即可
        
2.利用文件充当数据库编写用户登录、注册功能
 文件名称:userinfo.txt
 基础要求:
  用户注册功能>>>:文件内添加用户数据(用户名、密码等)
       用户登录功能>>>:读取文件内用户数据做校验
      ps:上述功能只需要实现一次就算过关(单用户) 文件内始终就一个用户信息
  拔高要求:
       用户可以连续注册
     用户可以多账号切换登录(多用户)  文件内有多个用户信息
      ps:思考多用户数据情况下如何组织文件内数据结构较为简单
    提示:本质其实就是昨天作业的第二道题 只不过数据库由数据类型变成文件

 

 

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/997395.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号