Python的文件操作

发布时间:2019-02-28 20:12:09编辑:auto阅读(2368)

    读操作

    file = open('测试文件',mode='r',encoding='utf-8')
    print(file.read())

     

    写操作

    file = open('测试文件',mode='w',encoding='utf-8')
    file.write('\t测试内容')                    # 这里的写入操作都会先将内容清空,再重新进行写入;并且支持转义字符的使用
    file.close()

     

    追加操作

    file = open('测试文件',mode='a',encoding='utf-8')
    file.write('\n\t测试内容2')                 # 这里的写入操作并不会清空内容,并且同样支持转义符的使用
    file.close( )

     

    读写操作

    file = open('测试文件',mode='r+',encoding='utf-8')
    print(file.read())                          # read会从按照最小字符内容光标位置进行查看
    file.write('\n测试内容3')                   #  这里的写入操作并不会清空内容,但是不支持转义字符的使用
    file.close()

     

    写读操作

    file = open('测试文件',mode='w+',encoding='utf-8')
    file.write('\n测试内容4')                    # 这里会先覆盖原有内容再进行写入操作,支持转义字符的使用
    print(file.read())                         # 这里并不会打印任何内容,因为写入之后光标已经到了结尾
    file.close()

     

    追加写入

    file = open('测试文件', mode='a+', encoding='utf-8')
    file.write('\n测试内容5')                   #  这里的写入操作并不会清空内容,但是不支持转义字符的使用
    file.   read()                            # 这里并不会打印任何内容,因为写入之后光标已经到了结尾
    file.close()

     

    调节光标位置

    file = open('测试文件', mode='w+', encoding='utf-8')
    file.write('测试内容7')
    file.seek(0)                              # seek方法是按照字节进行偏移
    print(file.read())

     

    指定光标内容打印

    file = open('测试文件', mode='w+', encoding='utf-8')
    file.write('测试内容8')
    file.seek(0)
    print(file.read(4))                          #从光标位置开始打印后面4个字符,切记这里是字符,并不是字节,即最小可视单位

     

    获取当前光标位置,主应用于断点续传

    file = open('测试文件', mode='w+', encoding='utf-8')
    file.write('测试内容8')
    file.seek(0)
    tell = file.tell()                          # 获取光标位置
    print(tell)

     

    自动关闭文件句柄

    with open('测试文件', mode='w+', encoding='utf-8') as file:
        file.write('测试内容9')
        file.seek(0)
        print(file.read())

     

    以行为单位的读取

    with open('测试文件', mode='r', encoding='utf-8') as file:
        print(file.readline())                      # read方法会先将整个文件缓存到内存中,再进行操作

     

    每一行当成列表中的一个元素,添加到list中

    with open('测试文件', mode='w+', encoding='utf-8') as file:
        file.write('测试内容10\n测试内容11')
        file.seek(0)
        print(file.readlines())                         # 连带换行符都一并加载出来

     

    文本内容的剪切

    with open('测试文件', mode='r+', encoding='utf-8') as file:
        file.truncate(2)                                # 仅保留第一行前两个字节

     

    文件的重命名及删除

    import os
    os.rename('用户文件','用户文件1')       # 重命名文件
    os.remove('用户文件1')                  # 删除文件

     

    注意事项

    • 文件本身是无法修改的
    • 文件的默认操作是'读取'
    • 文件只能通过重命名的方式修改文件内容

关键字