Python的文件操作

1.创建和打开文件(当文件不存在时,打开即为创建)

  • 在python中,想要操作文件需要先创建文件或者打开制定的文件并创建对象,可以通过内置的函数开实现 : 、

                file = open(finename,'mode',bufering)

  • 参数说明:
    • file:被创建的文件的对象
    • filename:要创建或者打开文件的文件名称,如果打开的文件和当前文件在同一个目录下则直接写文件名即可,否则需要指定完整的路径
    • mode:可选参数,用于制定文件的打开模式,默认打开模式为只读(即为r)
    • buffering:可选参数,用于指定读写文件的缓冲模式,值为0表达式不缓存,值为1表示缓存,大于1表示缓冲区的大小。默认为缓存模式
    • open函数不仅可以以文本的形式打开文本文件,还可以以二进制的形式打开非文本文件(如图片,音频,视频等)
    • mode参数的参数值说明如下表

 

  •  实例:
    • file = open('message.txt','w',encoding='utf-8')    # 创建或者打开message.txt文件
    • file = open('picture.png','rb')                               # 以二进制方法打开图片文件
    • file = open('nba.txt','r',encoding='utf-8')              #  open()函数打开文件默认使用GNK编码

2.关闭文件

  • 语法格式:file.close()                           # file 为打开的文件对象
  • 关闭文件后就不能再进行写入操作了

3.使用with语句打开文件

  • 打开文件后,要及时的将其关闭,如果忘记关闭可能会带来意想不到的问题。另外,打开文件时如果抛出异常,那么就会导文件不能及时的关闭,为了避免这些问题我们可以使用Python中的with语句打开文件
  • with的基本格式语法如下
    • with expression as target:

               with_body

    • 参数说明

      • expression:用于指定一个表达式,这里可以使打开文件的open()函数

      • target:用于指定一个变量,并且将expression的结果保存到该变量中

      • with-body:用于指定with语句体,可以是执行with语句后相关的一些操作,如果不想只想执行任何语句,可以直接使用pass语句代替

    • 例子

                with open('message.txt','r') as file:

                        pass

4.写入文件内容

  • 可以使用write()方法向文件中写入内容,语法格式为 file.write(string)
  • 例子

        file = open('message.txt','w',encoding='utf-8')          # 打开文件对象

        file.write('学习Python,让我快乐')                               # 向文件中写入内容

        file.close()                                                                 # 关闭文件

  • 在文件写入后,一定要用close()将其关闭,不然写入的内容不会保存到文件中

5.读取文件

5.1:read()

  1. file.read([size]) :用于读取指定字符个数,如果省略,即为一次性读取所有内容
  2.  例子:with open('message.txt','r') as file:

                        string = file.read(9)             # 读取第九个字符

                        string = file.read()               # 读取所有字符

5.2:file.readline():用于读取某一行的内容,下边为逐行读取文件内容

with open('message.txt','r') as f:
    number = 0
    while True:
        number += 1
        line = readline()
        if line == ''
            break
           print(number,line,end=''\n)

  5.3:file.readlines():用于读取全部行  

     

             

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值