• Python 08学习之文件操作


    😀前言
    欢迎来到Python 08学习之文件操作。在本文中,我们将介绍计算机中常见的文本文件和二进制文件,并探讨在Python中操作文件的步骤和相关函数/方法。通过学习本文,您将能够了解如何使用Python打开、读取、写入和关闭文件,以及如何按行读取文件内容。希望您能够通过本文提高您的Python文件操作能力,并且在实际应用中能够得心应手地处理文件操作任务。

    🏠个人主页:尘觉主页
    在这里插入图片描述

    🧑个人简介:大家好,我是尘觉,希望我的文章可以帮助到大家,您的满意是我的动力😉😉

    在csdn获奖荣誉: 🏆csdn城市之星2名
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 💓Java全栈群星计划top前5
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 🤗 端午大礼包获得者
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 🥰阿里云专家博主
    ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ ⁣⁣⁣⁣ 😉亚马逊DyamoDB结营

    💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
    如果文章有什么需要改进的地方还请大佬不吝赐教 先在次感谢啦😊

    Python 08 学习之文件操作

    计算机可以分为 文本文件 和 二进制文件:

    • 文本文件 :可以使⽤⽂本编辑软件查看; 例如:python 的源程序 ,txt 文本文件等;
    • 二进制文件:保存的内容不是给⼈直接阅读的,⽽是提供给其他软件使⽤的 ; 例如:图⽚⽂件、⾳频⽂件、视频⽂件等等 ; ⼆进制⽂件不能使⽤⽂本编辑软件查看。

    1、基本操作

    在计算机中要操作文件的套路非常固定,一共包含三个步骤:

    1. 打开⽂件 ;

    2. 读、写⽂件 ;

      读: 将⽂件内容读⼊内存 ;

      写: 将内容写⼊⽂件 。

    3. 关闭⽂件 。

    1.1 操作文件的函数/方法

    在 Python 中要操作⽂件需要记住 1 个函数和 3 个方法。

    序号函数/方法说明
    1open打开文件,并且返回文件操作对象
    2read将文件内容读取到内存
    3write将指定内容写入文件
    4close关闭文件

    注:

    1、open 函数的第⼀个参数是要打开的⽂件名(⽂件名区分⼤⼩写) ;

    2、如果⽂件存在------返回⽂件操作对象 ;如果⽂件不存在------出错 ;

    3、如果忘记关闭⽂件,会造成系统资源消耗,⽽且会影响到后续对⽂件的访问 。

    1.2 文件操作案例-------读文件

    # 打开文件
    file = open(r"C:\Users\Administrator\Desktop\工单查询.txt", "r", encoding="utf8")
    # 读取文件
    text = file.read()
    # 显示读取内容
    print(text)
    # 关闭文件
    file.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    注意:

    在 python 中 ,字符串前面加 r,表示字符串的内容不通过\转义 ;

    encoding=“utf8” 以 utf8 编码格式打开文件 。

    1.3 文件操作案例-------写文件

    # 打开文件
    file = open(r"C:\Users\Administrator\Desktop\Test.txt", "w")
    # 写入内容
    str1 = "求个关注+点赞\n"
    file.write(str1)
    # 关闭文件
    file.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    1.4 open 打开⽂件的⽅式

    open 函数默认以只读⽅式打开⽂件,并且返回⽂件对象

    • “r”:只读方式打开文件;
    • “w”:只写方式打开文件;
    • “a”:追加写方式打开文件;

    open 函数的访问方式后面添加 b 参数代表访问二进制文件

    rb: 代表用只读的方式打开一个二进制文件;

    wb:代表用只写的方式打开一个二进制文件。

    ab:代表用追加写的方式打开一个二进制文件

    2、按行读取

    read ⽅法默认会把⽂件的所有内容⼀次性读取到内存 ,但是如果⽂件太⼤,对内存的占⽤会⾮常严重。

    解决方案就是: 按行读取文件内容。

    2.1 readline ⽅法

    readline 方法可以一次读取一行内容,⽅法执⾏后,会把⽂件指针移动到下⼀⾏,准备再次读取readline 方法读取到文件最后,返回长度为 0 的字符串 ”” 。

    # 打开文件
    file = open(r"C:\Users\Administrator\Desktop\工单查询.txt", "r", encoding="utf8")
    # 读取文件
    text = file.readline()
    # 显示读取内容
    print(text)
    # 关闭文件
    file.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    我们还可以结合 while 循环 readline 读取文件全部内容

    # 打开文件
    file = open(r"C:\Users\Administrator\Desktop\工单查询.txt", "r", encoding="utf8")
    while True:
        # 读取文件
        text = file.readline()
        if text =="":
            break
        # 显示读取内容
        print(text,end="")
    # 关闭文件
    file.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    2.2 readlines ⽅法

    readlines 方法可以一次读取文件所有行,返回类型为列表。

    # 打开文件
    file = open(r"C:\Users\Administrator\Desktop\工单查询.txt", "r", encoding="utf8")
    text = file.readlines()
    for i in text:
        print(i,end="")
    # 关闭文件
    file.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    2.3 with open 语法

    with open(r"C:\Users\Administrator\Desktop\工单查询.txt", "r", encoding="utf8") as file:
        print(file.read())
    
    • 1
    • 2

    3、JSON 操作

    JSON 的全称是”JavaScript Object Notation”,是 JavaScript 对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式。

    3.1 特点

    • JSON 是纯文本;
    • JSON 具有良好的自我描述性,便于阅读和编写;
    • JSON 具有清晰的层级结构;
    • 有效地提升网络传输效率;

    3.2 语法规则

    • 大括号保存对象;
    • 中括号保存数组;
    • 对象数组可以相互嵌套;
    • 数据采用键值对表示;
    • 多个数据由逗号分隔;

    3.3 值

    • 数字(整数或浮点数);
    • 字符串(在双引号中);
    • 逻辑值(true 或 false);
    • 数组(在中括号中);
    • 对象(在大括号中);
    • null

    示例:

    {
      "name" : "node-1",
      "cluster_name" : "elasticsearch",
      "cluster_uuid" : "rtFGtGA3QKqy3nnm4f33SA",
      "version" : {
        "number" : "7.3.0",
        "build_flavor" : "default",
        "build_type" : "zip",
        "build_hash" : "de777fa",
        "build_date" : "2019-07-24T18:30:11.767338Z",
        "build_snapshot" : false,
        "lucene_version" : "8.1.0",
        "minimum_wire_compatibility_version" : "6.8.0",
        "minimum_index_compatibility_version" : "6.0.0-beta1"
      },
      "tagline" : "You Know, for Search"
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    3.4 数据操作

    读取json文件:

    import json
    # 打开文件
    f = open(r"C:\Users\Administrator\Desktop\Test.json", "r", encoding="utf8")
    data = json.load(f)
    # 返回的 data 数据类型为字典或列表
    print(data)
    f.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    写入json文件:

    import json
    
    # 准备数据
    data = {'name': '一切总会归于平淡', 'age': 18, 'url': 'https://juejin.cn/user/567767899324286'}
    # 打开文件
    f = open(r"C:\Users\Administrator\Desktop\Test.json", "w", encoding='UTF-8')
    json.dump(data, f, ensure_ascii=False)
    f.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    注:

    ensure_ascii=False 代表中文不转义

    😄总结

    在本文中,我们介绍了文本文件和二进制文件的区别,并详细阐述了在Python中操作文件的三个基本步骤:打开文件、进行读/写操作和关闭文件。我们学习了使用open()函数打开文件,使用read()和write()方法进行读/写操作,以及使用close()方法关闭文件。此外,我们还探讨了如何按行读取文件内容,介绍了readline()方法的使用。通过学习本文,您将能够更好地理解和掌握Python中的文件操作,从而在实际应用中更加自信地处理文件相关的任务。希望本文对您有所启发和帮助。

    😁热门专栏推荐
    想学习vue的可以看看这个

    java基础合集

    数据库合集

    redis合集

    nginx合集

    linux合集

    手写机制

    微服务组件

    spring_尘觉

    springMVC

    mybits

    等等等还有许多优秀的合集在主页等着大家的光顾感谢大家的支持

    🤔欢迎大家加入我的社区 尘觉社区

    文章到这里就结束了,如果有什么疑问的地方请指出,诸佬们一起来评论区一起讨论😁
    希望能和诸佬们一起努力,今后我们一起观看感谢您的阅读🍻
    如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

  • 相关阅读:
    Spring Boot从入门到精通【一】
    summer time~ schedule
    Maven pom.xml <packaging>pom</packaging> 引发的问题
    论文网站有哪些?
    Typora消失的图片?
    三级分类部分三级目录无法加载,后端接口能在前端返回所有数据
    软件工程与计算总结(十三)详细设计中的模块化与信息隐藏
    MMQA5V6T1G 瞬态电压抑制器 TVS二极管的特性及应用
    HTML设计一个简单的奥迪RS汽车主题网站( web网页制作期末大作业)
    知识点滴 - 有关剧本的网站
  • 原文地址:https://blog.csdn.net/apple_67445472/article/details/132938757