• python之文件操作


    ---恢复内容开始---

    open 打开

    f = open(文件路径, mode="模式", encoding="编码格式") 最最底层操作的就是bytes

    打开一个文件的时候获取到的是一个文件句柄.

    # 文件句柄是一个可迭代对象
    # 优点: 相对来说节省内存, 操作相对简单
    for line in f: # 从文件中读取到每一行给前面的line
        print(line.strip())
    f.close()

    执行完对文件的操作后 要执行

    f.close()

    绝对路径:从磁盘根目录开始寻找

    相对路径:相对于当前程序所在的文件夹.   ../ 上一层文件       文件夹/ 进入xxx文件夹

     mode="模式"  模式:

    r: read 读取,只读,

    f = open('dnf.txt', mode='r', encoding='utf-8')
    print(f.read()) # 将文件中的所有内容输出
    # print(f.read(5)) # 读取5个字符
    # print(f.read(5)) # 再次读取5个字符
    # print(f.readline()) # 读取一行
    # print(f.readlines()) #一次性把文件中的内容读取到列表中 ['剑帝貌美如花,
    ', '只把剑帝当主号.']
    f.close()

     w: write, 写入,只写   如果文件不存在,会创建文件; 文件存在,会清空文件

    # 每次用w模式打开文件, 都会清空这个文件(注意)
    f = open('one', mode="w", encoding="utf-8") # 可以帮我们创建文件
    
    f.write('yesterday
    ')
    f.write("today
    ")
    f.write('tomorrow
    ')
    
    # 好习惯
    f.flush()  # 刷新管道, 把数据写入文件
    f.close()

    a : append, 追加写   当文件不存在,也会创建文件

    # 每次用w模式打开文件, 都会清空这个文件(坑)
    f = open('one', mode="w", encoding="utf-8") # 可以帮我们创建文件
    
    f.write('yesterday
    ')
    f.write("today
    ")
    f.write('tomorrow
    ')
    
    # 好习惯
    f.flush()  # 刷新管道, 把数据写入文件
    f.close()

    文件操作中关于文件句柄的相关操作

    seek() 移动光标
    f.seek(0) 移动到开头(使用最多)
    f.seek(0, 2) 移动到末尾
    seek:两个参数
    1. 表示偏移量
    2. 从xxx开始偏移, 默认0, 开头 1, 当前位置 2, 末尾

    tell
    返回光标所在的位置

    ---恢复内容结束---

  • 相关阅读:
    Algs4-2.2.1给出原地归并排序merge的排序过程
    Algs4-2.2.2给出自顶向下归并排序的排序过程
    Algs4-2.1.38不同类型的元素
    Algs4-2.1.36不均匀的数据
    Algs4-2.1.37部分有序
    Algs4-2.1.35不均匀的概率分布
    Algs4-2.1.34罕见情况
    升级python到2.7版本pip不可用
    随机验证码
    python文件操作
  • 原文地址:https://www.cnblogs.com/q455674496/p/10070549.html
Copyright © 2020-2023  润新知