• 技术文章 >后端开发 >Python教程

    Python自学文件操作

    coldplay.xixicoldplay.xixi2020-12-16 17:44:10转载1623
    python视频教程栏目介绍自学文件操作

    推荐(免费):python视频教程

    我是一个学习Python初学者,近期刚学完文件操作。特地分享
    文章分为两部分,第一部分为文件读取类型以及读取的方式,第二部分为练习题

    文件读取类型

    文件读取的操作方式有以下几种:只读,只写,追加,读写,写读

    只读 r

    f = open('test',mode='r',encoding='utf-8')  # 打开文件,读取方式为`r`,编码为UTF-8
    f1 = f.read() # 读取文件
    print(f1) #打印文件
    f.close() # 关闭文件

    只读类型下,文件不能被修改

    读写 r+

    f = open('test',mode='rb',encoding='utf-8') # 读取方式变为`r+`
    file = f.read()
    f1 = f.read()
    f.close()

    当读取方式为r+时,文件可以被写入,但是打印出来的是写入前所读取的

    二进制读 rb
    代码略去,文件以二进制的模式读取。

    剩下的我将以表格形式统一展现,可以参照对比以上代码

    读取方式补充
    r只读,不可被修改
    r+读写,光标在前,从第一个位置开始修改,打印出修改的字符数
    rbbyte方式读取
    w只写,若写入的目标文件没有,则创建,有则清空再写入
    wb转换为byte类型写入
    a打开文件,把光标移动到有文字的后面,再进行追加
    abbyet类型加入

    :r+有两个表现,一个是读写,还有一个是写读。需要注意。另,w+a+我没有写,是因为学习阶段用的相对来说较少

    读取功能

    我先以表格形式展示,再进行详解

    读取方式用于场合
    read()以字符读,可添加参数(I),读前i个字符
    seek()调整光标位置
    tell()调整光标位置,需放置于seek()
    readline()一行一行的读
    readlines()将每一行当成列表中元素读取,换行自带 \n
    truncate()截取一段读出来,从后往前读

    例如有一个名为test的文件,文件内容如下:

    456926667

    这是一个长为10个字符的字符串

    f = open('test',mode='r',encoding='utf-8')  # 打开文件,读取方式为`r`,编码为UTF-8
    f1 = f.read(5) # 读取文件中前5个字符
    print(f1) #打印文件
    f.close() # 关闭文件

    打印结果为

    45692

    f = open('test',mode='w',encoding='utf-8')  # 打开文件,读取方式为`w`,编码为UTF-8
    f1 = f.seek()
    print(f1) #打印第五个字符
    f.close() # 关闭文件

    打印结果为

    2

    剩下的我就不一一做演示,有需要可以自己试一试

    文件读取方式

    f = open('test',mode='w',encoding='utf-8')

    此文件读取方式,仅能读取一个文件,另外代码多

    with open('test',mode='w',encoding='utf-8') as f:
          pass

    此文件读取方式,能同时读取多个文件,且代码量相对来说少

    当需要同时操作两个或两个文件以上时,with open 方法会相对来说简易许多

    以上就是Python自学文件操作的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:简书,如有侵犯,请联系admin@php.cn删除
    专题推荐:Python 文件操作
    上一篇:介绍python中slice参数过长的处理方法及实例 下一篇:认识python的json.dumps()和json.loads()
    大前端线上培训班

    相关文章推荐

    • python怎么读写文件操作• java文件操作——获取文件或目录信息• ThinkPHP6 任意文件操作漏洞分析• java中常用的文件操作有哪些

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网