首页 > 编程语言 >python文件操作

python文件操作

时间:2022-10-09 18:56:29浏览次数:52  
标签:文件 encoding python utf8 模式 print 操作 open

今日内容概要

  • 文件操作

    利用python代码的编写来读写文件

1.文件的概念

2.文件的操作方式

3.文件读写模式

4.文件操作模式

5.文件诸多方法

6.文件内容修改

7.文件光标移动

文件操作

1.文件的概念
	就是操作系统暴露给用户操作硬盘的快捷方式
    eg:双击一个文件,其实是从硬盘将数据加载到内存
    ctrl+s保存文件,其实就是将内存的数据刷到硬盘保存
    2.代码打开文件的两种方式
    方式一:
    f = open(文件路径,读写模式,encoding ='utf8')as f:
        with 子代码块
   PS:with上下文管理好处在于子代码运行结束自动调用close方法关闭资源

"""
open 方法的第一参数是文件路径,并且撬棍和一些字母的组合会产生一些特殊的含义导致路径查找混乱,为了解决该问题可以在字符串的路径前面加字母r
			D:\a\n\t
			r'D:\a\n\t'
  以后凡是涉及到路径的编写,推荐加上r
  
  with还支持一次性打开多个文件
  with open ()as f1,open() as f2:
     with执行的子代码
  
"""

文件读写模式

'r'		只读模式:只能读不能写
	1.文件路径不存在:会直接报错
    with open(r‘b.txt','r',encoding='utf8') as f:
    	print(f.read())
     2.文件路径存在:正常读取文件内容
     with open(r'a.txt', 'r', encoding='utf8') as f:
        print(f.read())
        
'w'		只写模式:只能写不能看

     1.文件路径不存在:自动创建
     with open(r'b.txt', 'w', encoding='utf8') as f:
     pass
     2.文件路径存在:先清空文件内容,然后再写进去
	with open(r"a.txt",'w',encoding= 'utf8')as f:    f.write('先把以前的内容清空删除\n')
	  f.write('再把新的数据添加进去\n')
        
  PS:换行符是需要自己手动添加的,并且在后续数据读取对比的时候也一定要注意它的存在
        
 'a'		只追加模式:文件末尾添加数据
     1.文件路径不存在:自动创建
     with open(r'c.txt', 'a', encoding='utf8') as f:
         pass
     2.文件路径存在:自动在末尾等待追加内容
    with open(r'a.txt', 'a', encoding='utf8') as f:
        f.write('就在后面添加新的内容')      

温馨小提示:

当我们在编写代码的时候,有些部分不知道要写什么具体的代码,但是内容也不能是空着不写,这个时候就可以使用关键字

pass

...

他们只有语法补全功能,本身没有任何的含义

文件操作模式

t 文本模式
默认的模式,我们上面所写的r w a 其实全称是rt wt at
1.只能操作文本文件
2.读写都是以字符作为单位
3.需要指定encoding参数,如果不知道则会采用计算机默认的编码
b 二进制模式(bytes模式)
不是默认的模式,需要自己指定 rb wb ab
1.可以操作任意类型的文件
2.读写都是以bytes为单位
3.不需要指定的encoding参数,因为它已经是二进制模式了,不需要编码

r+ :   可读、可写,文件不存在也会报错,写操作时会覆盖

w+ :   可读,可写,文件不存在先创建,会覆盖

a+ :  可读、可写,文件不存在先创建,不会覆盖,追加在末尾
而进制模式与文本模式针对文件路径是否存在的情况下规律是一样的

image

文件的诸多的方法

1.read()
	一次性读取文件内容,并且光标停留在文件末尾,继续读取的话则没有任何内容
    并且当文件内容比较多的时候,该方法还可能会造成计算机内存溢出
    括号内还可以填写数字,在文本模式下,表示读取几个字符
   2.for循环
	一行行读取文件内容,避免内存溢出现象的产生
    
    3.readline()
    一次只读一行内容
    4.readlines()
    一次性读取文件内容,会按照行数组织成列表的一个个数据值
    5.readable()
    判断文本是否具备读数据的能力
    6.write()
    写入数据
    7.writeable()
    判断文件是否具备写数据的能力
    8.writelines()
    接受一个列表一次性将列表中所有的数据值写入
    9.flush()
    将内存中文件数据立刻刷到硬盘,  相当于  Ctrl+s

文件内光标的移动

with open(r'a.txt','rb') as f :
    print(f.read())
    f.seek(0,0)
    print(f.read())
    f.seek(0, 0)
    print(f.read())
    print(f.read(2).decode('utf8'))
 	 f.seek(-1, 2)
    # print(f.tell())  # 返回光标距离文件开头产生的字节数
    """
    seek(offset, whence)
        offset是位移量 以字节为单位
        whence是模式   0  1  2
            0是基于文件开头
                文本和二进制模式都可以使用
            1是基于当前位置
                只有二进制模式可以使用
            2是基于文件末尾
                只有二进制模式可以使用
    """
    # print(f.read(3).decode('utf8')

image

标签:文件,encoding,python,utf8,模式,print,操作,open
From: https://www.cnblogs.com/qiguanfusu/p/16773267.html

相关文章

  • python调用c++的方法,加速运算
    cpp源代码#include"iostream"usingnamespacestd;classCalc{public:intadd(inta,intb);};intCalc::add(inta,intb){cout<<"收到参数为a,b:"<<a<......
  • python函数
    今日内容概要文件内光标的移动实战演习计算机硬盘存取数据的原理文件内容修改函数简介函数的语法结构函数的定义与调用今日内容详细文件内光标移动案列(了解......
  • 【Visual Studio 2022】 首次安装出现 fatal error C1083: 无法打开包括文件:“crtdbg
    VS2022包括的版本如下:Windows版本WindowsSDK版本Windows10版本1903Windows10SDK版本1903(10.0.18362.1)Windows10版本2004Windows10SDK版本2004(10......
  • javaweb文件上传和下载
    案例1:文件随同表单一起上传前端页面<div><formclass="form-signin"id="addSongFormId"enctype="multipart/form-data"method="post">歌曲:<inputtype="file"id="fileS......
  • 文件操作
    文件操作1.文件的概念 就是操作系统暴露给用户操作硬盘的快捷方式 eg:双击一个文件其实是从硬盘将数据加载到内存ctrl+s保存文件其实是将内存中的数据刷......
  • 解决curl下载夹带中文的文件
    1.提供代码重点关注curl_escapeAPI#include<stdlib.h>#include<stdio.h>#include<sys/stat.h>#include<curl/curl.h>size_tgetcontentlengthfunc(void*p......
  • 文件操作及函数初识
    目录文件操作文件读写模式文件操作模式文件诸多方法文件内光标的移动文件内光标移动案例(了解)计算机硬盘修改数据的原理(了解)文件内容修改(了解)函数前戏函数的语法结构函数的......
  • 文件操作
    文件操作​文件的概念​​就是操作系统暴露给用户操作硬盘的快捷方式​ 双击一个文件其实是从硬盘将数据加载到内存​ ctrl+s保存文件其实是将内存中......
  • 文件操作
    文件操作目录文件操作1文件的概念2代码打开文件的两种方法文件读写操作文件操作模式文件诸多方法文件内光标的移动作业1文件的概念文件就是操作系统给用户操作的快捷方......
  • 10、python正式篇 文件和光标移动
    目录一、文件操作1、文件的概念2、代码打开文本的方式二、文件读写模式1、'r'只读模式read2、'w'只写模式write3、'a'尾部追写模式add三、文件操作模式1、t文本模式......