• Python学习----文件操作


    文件的读取

    在Python中,使用open函数可以打开一个已经存在的文件或者创建一个新文件
    语法:
    open(name , mode , encoding)
    name : 打开文件的具体路径
    mode :设置打开文件的模式(访问模式):
    只读(r ,默认模式)
    写入(w,如果文件存在则打开文件并从头开始编辑,原有的内容会被删除,如果文件不存在,则创建一个新文件)
    追加(a,如果文件存在新的内容会被写入到末尾,如果文件不存在,则创建一个新文件进行写入)
    encoding:编码格式(推荐UTF-8)

    读操作:
    语法: 文件对象 . read(num)
    num表示从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件中所有数据
    注意:每次读取会将上一次的结束位置作为开始位置进行读取,就像一个指针一样,当然前提是同一个文件对象对象。
    在这里插入图片描述

    语法: 文件对象 . readlines()
    readlines 可以按照行的方式把整个文件中的内容进行一次性的读取,并且返回的是一个列表,其中每一行的数据为一个元素
    还有一个 readline() 方法,读取一行,类型为str,每调用一次读取一行,也是接着上一次结束位置开始读取。
    在这里插入图片描述

    for循环读取文件行
    换行符也是一行
    在这里插入图片描述

    关闭文件对象
    文件对象 . close() # 如果不关闭,文件会被python一直占用
    占用过程中无法操作文件,例如在windows系统进行删除或者改名是无法完成的。

    with open 语法
    with open(“文件路径”,“模式” ,编码格式)as f:
    f.readlines()

    这种方式在读取完成之后会自动关闭文件读取对文件的占用。自动close文件
    在这里插入图片描述

    文件的写入

    创建文件对象
    open(name , mode , encoding)
    name : 打开文件的具体路径
    mode :设置打开文件的模式(访问模式):
    只读(r ,默认模式)
    写入 (w,如果文件存在则打开文件并从头开始编辑,原有的内容会被删除,如果文件不存在,则创建一个新文件)
    追加(a,如果文件存在新的内容会被写入到末尾,如果文件不存在,则创建一个新文件进行写入)
    encoding:编码格式(推荐UTF-8)

    1、直接调用write,内容并未真正写入文件中,而是积攒在程序的内存中,称之为缓冲区
    文件对象 . write (“文本内容…”)
    2、将缓冲区的内容保存到硬盘
    文件对象 . flush()
    这样是避免频繁操作硬盘,导致io过载

    在这里插入图片描述
    同样的,还是需要关闭文件对象,不然程序会一直占用文件,但是这儿测试,程序结束自动关闭文件对象。
    文件对象 . close() # 这个方法自带 flush 功能。

    文件的追加

    创建文件对象
    open(name , mode , encoding)
    name : 打开文件的具体路径
    mode :设置打开文件的模式(访问模式):
    只读(r ,默认模式)
    写入 (w,如果文件存在则打开文件并从头开始编辑,原有的内容会被删除,如果文件不存在,则创建一个新文件)
    追加(a,如果文件存在新的内容会被写入到末尾,如果文件不存在,则创建一个新文件进行写入)
    encoding:编码格式(推荐UTF-8)

    想要换行自己 加 换行符 \n
    在这里插入图片描述

  • 相关阅读:
    R语言检验样本是否符合正态性(检验样本是否来自一个正态分布总体):shapiro.test函数检验样本是否符合正态分布(normality test)
    Matlab-ODE45:求解状态变量(微分方程组)
    【音频处理】Loudness Normalization 响度均衡算法简介
    【huggingface】数据集及模型下载并保存至本地
    Linux安装Mysql详细教程(两种安装方法)
    初识Linux
    Redis的数据类型到底有什么奥秘
    Hbase(一)入门
    员工脉搏/脉动调查完整指南
    没有苹果本也可以构建ios版本+生成不同设备效果图——香蕉云编
  • 原文地址:https://blog.csdn.net/m0_48639280/article/details/127848991