zoukankan      html  css  js  c++  java
  • 【Python028--引入文件】

    一、打开文件

    1、open()函数

    打开模式        执行操作

     ‘r’        以只读方式打开文件(默认)

     ‘w’        以写入的方式打开文件,会覆盖已存在的文件

     ‘x’           如果文件已经存在,使用此模式打开将引发异常

       ‘a’         以写入模式打开,如果文件存在,则在末尾追加写入

     ‘b’         以二进制模式打开文件

     ‘t’        以文本模式打开(默认)

     ‘+’        以可读模式(可添加到其他模式中使用)

     ‘U’        通用换行符支持

    ********************************************************************

    文件对象方法       执行操作

    f.close()       关闭文件

    f.read(size = -1)      从文件读取size个字符,当未给定size或给定负值的时候,读取剩余的所有自负,然后作为字符串返回

    f.readline()       以写入模式打开,如果文件存在,则在末尾追加写入

    f.write(str)      将字符串str写入文件

    f.writelines(seq)     向文件写入字符串序列seq,seq应该是一个返回字符串的可迭代对象

    f.seek(offset,from)   在文件中移动文件指针,从from(0代表文件起始位置,1代表当前位置,2代表文件末尾)偏移offset个字节

    f.tell()        返回当前在文件中的位置

    ***********************************************************************

    二、举例说明:
    # read(5):从文件读取5个字符

    >>> f = open('//Users//wufq//Desktop//record.txt')

    >>> f.read(5)
    '12345'

    # tell():返回当前在在文件中的位置

    >>> f = open('//Users//wufq//Desktop//record.txt')
    >>> f.tell()
    5

    # seek(5,0):从0开始移动5个位置

    >>> f = open('//Users//wufq//Desktop//record.txt')
    >>> f.seek(6,0)
    6

    # readline()  结合着seek()函数,从移动的位置,直接读取第一行的数据

    >>> f = open('//Users//wufq//Desktop//record.txt')
    >>> f.seek(5,0)
    5
    >>> f.readline()
    '56789 '
    >>>

    #迭代读取文本的每一行

    >>> f = open('//Users//wufq//Desktop//record.txt')

    >>> for each_line in f:
        print(each_line)
       
    1234056789


    2222222222


    3333333333


    4444444444


    0987654321

    >>>

    # write(str):写入字符串到文件

    >>> f = open('//Users//wufq//Desktop//record.txt','w')
    >>> f.write('99999999')
    8
    >>> f.close()   #写入字符串以后,必须的关闭,要不写入的内容会写到缓存内

    三、练习题

    1、如何将一个文件对象(f)中的数据存放进列表中

    >>> f = open('//Users//wufq//Desktop//record.txt')
    >>> list(f)        #使用list(f)
    ['99999999']

    2、如何迭代打印文件对象(f)中的每一行数据

    for each_line in f:

      print(each_line)

    3、文件对象的内置方法f.read(size=-1)作用是读取文件对象内容,size参数是可选的,那如果设置了size = 10 ,例如f.read(10),将返回什么内容?

    返回文件内的十个字符

    4、如何获得文件对象(f)当前文件指针的位置

    f.tell()

    5、尝试将文件(OpenMe.mp3)打印到屏幕上

    f.open('OpenMe.mp3')

    for each in f:
        print(each,end='')

    f.close()

    6、编写代码,将上一题中的文件(OpenMe.mp3)保存为新文件(OpenMe.txt)

    f1 = open('OpenMe.mp3')
    f2 = open('OpenMe.txt')
    f2.write(f1.read())   #读取f1文件并写到f2里面
    f2.close()
    f1.close()

  • 相关阅读:
    阿里云物联网 .NET Core 客户端 | CZGL.AliIoTClient:8. 委托事件
    阿里云物联网 .NET Core 客户端 | CZGL.AliIoTClient:7. 服务调用
    Git
    Git
    Git
    Git
    Git
    Git
    Git
    Delphi
  • 原文地址:https://www.cnblogs.com/frankruby/p/9275102.html
Copyright © 2011-2022 走看看