今日主要内容
    一. 文件操作 open() 文件句柄
       1  open()打开一个文件, 获取的是文件句柄
         f = open("胡辣汤", mode="r", encoding="utf-8")
       2  read()   # 读取全部  正常情况下不能用
           # read(n) 读取n个字符
           # content = f.read(3)
       3  readline()   # 读取一行
       4  readlines()  # 读取多行   正常情况下不能用
       5  write()
            # 一次读取一行
            # while 1:
            #     line = f.readline()
            #     print(line)
       6  for line in f: 遍历文件中的内容  一行一行的读取。 每次读取的内容交给前面的变量

         路径的问题:
            1. 绝对路径 (当文件路径是固定的时候)
                从磁盘根目录寻找文件    windows 下用的就是c d e f盘 linux: \user\bin\xxxx
            2. 相对路径
                从当前程序运行的文件夹内寻找
                ..\表示上一层文件
    二. 文件操作的相关模式Mode
        r: 只读
        w: 只写 , 先清空里面的内容,然后再写入. 并具有新建功能(和复制功能)
        a: 只追加 , 追加写入, 具有新建,
        r+:读写   先读后写 # 默认如果直接写入的话。 在开头写入。 覆盖开头的内容
           坑: 不论你读取多少内容。再次写入的时候都是在末尾(需调光标)
        w+:写读   # 先清空。 然后再操作 (此使用率最低)
        a+:增读写  # 不论光标在何处 写入的时候都是在末尾

        非文本文件
        rb: #
        wb: #
        ab: #

        r+b: #
        w+b: #
        a+b: #

    三. 相关操作
        1. seek()移动光标(重点) 注意, 移动的单位是byte
            f.seek(0) 开头
            f.seek(0,2) 移动到末尾
        2. f.tell() 获取光标所在的位置

        3. truncate() 截断文件(慎用)

    四. 文件修改
        with open(xxx) as 句柄, \
            open(xxxxx)as xxx
        不用手动关闭文件句柄

        文件修改的步骤
            1. 从源文件中读取数据。
            2. 写入到副本文件中
            3. 删除源文件
            4. 把副本重命名成源文件
        import os
        os.remove()
        os.rename()