• python -文件相关操作


    前言

      如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
      而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


    python -文件相关操作

    使用内置的 open() 函数打开文件。它接收两个参数:文件路径和文件打开模式。
    文件路径可以是绝对路径或相对路径,文件打开模式可以是 “r”(读取模式)、“w”(写入模式)、“a”(追加模式)等。
    Python 提供了 with 语句让文件处理更简洁和安全。with 语句会自动关闭文件,
    即使在发生异常的情况下也能保证文件正确关闭。

    1. 读取文件

    1.1. 读取整个文件内容
    print("======================读取整个文件内容")
    with open("D:\\pathonFile\\test.txt","r", encoding="utf-8", errors="ignore") as f:
        content = f.read()  # 读取整个文件内容
        print(f'content:【{content}】\n')
    
    • 1
    • 2
    • 3
    • 4
    1.2. 读取文件的一行内容
    print("======================读取文件的一行内容")
    with open("D:\\pathonFile\\test.txt","r", encoding="utf-8", errors="ignore") as f:
        line = f.readline()  # 读取文件的一行内容
        print(f'line:{line}\n')
    
    • 1
    • 2
    • 3
    • 4
    1.3. 将文件的内容按行存储到一个列表中
    print("======================将文件的内容按行存储到一个列表中")
    with open("D:\\pathonFile\\test.txt","r", encoding="utf-8", errors="ignore") as f:
        lines = f.readlines()  # 将文件的内容按行存储到一个列表中
        index = 1
        for line in lines:
            print(f'{index}-line:{line}')
            index += 1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    2. 写入文件

    write_path = "D:\\pathonFile\\testWrite.txt"
    
    print("======================写入文件")
    # 写入文件
    with open(write_path, "w", encoding="utf-8") as f:
        f.write("测试0001")
        
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    3. 删除文件

    import os
    # 删除文件
    try:
        os.remove(write_path)
        print(f"文件 '{write_path}' 已成功删除。")
    except OSError as e:
        print(f"删除文件 '{write_path}' 时出错: {e}")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    4. 追加文件

    # 追加文件
    with open("D:\\pathonFile\\test.txt","a", encoding="utf-8") as f:
        f.write("\nNew 17982739827984714987298347.")  # 追加内容到文件末尾
    
    • 1
    • 2
    • 3

    5. 遍历文件

    5.1. 使用 os 模块 遍历文件
    import os
    
    def osWriteFile(filePaths):
        print("======================使用 os 模块-遍历文件夹中的所有文件和子文件夹")
        # 遍历文件夹中的所有文件和子文件夹
        for root, dirs, files in os.walk(file_paths):
            for file_name in files:
                file_path = os.path.join(root, file_name)
                # 处理文件路径及相关操作
                print(f'file_path:{file_path}')
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    5.2. # 使用 glob 模块 遍历文件
    # 使用 glob 模块 遍历文件
    def globWriteFile(filePaths):
        print("======================使用 glob 模块-遍历文件夹中的所有文件和子文件夹")
        # 遍历文件夹中的所有文件
        path = "{}/*".format(filePaths)
        files = glob.glob(path)
        for file_path in files:
            # 处理文件路径及相关操作
            print(file_path)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    5.3. 使用os.listdir() 函数遍历文件
    # 使用os.listdir() 函数遍历文件
    def osListdirWriteFile(filePaths):
        print("======================使用os.listdir() 函数 模块-遍历文件夹中的所有文件和子文件夹")
        files = os.listdir(filePaths)
        for file_name in files:
            file_path = os.path.join(filePaths, file_name)
            # 处理文件路径及相关操作
            print(file_path)
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    6. 测试

    6.1. 测试脚本
    import os
    import glob
    
    # 使用 os 模块 遍历文件
    def osWriteFile(filePaths):
        print("======================使用 os 模块-遍历文件夹中的所有文件和子文件夹")
        # 遍历文件夹中的所有文件和子文件夹
        for root, dirs, files in os.walk(file_paths):
            for file_name in files:
                file_path = os.path.join(root, file_name)
                # 处理文件路径及相关操作
                print(f'file_path:{file_path}')
    
    
    # 使用 glob 模块 遍历文件
    def globWriteFile(filePaths):
        print("======================使用 glob 模块-遍历文件夹中的所有文件和子文件夹")
        # 遍历文件夹中的所有文件
        path = "{}/*".format(filePaths)
        files = glob.glob(path)
        for file_path in files:
            # 处理文件路径及相关操作
            print(file_path)
    
    
    # 使用os.listdir() 函数遍历文件
    def osListdirWriteFile(filePaths):
        print("======================使用os.listdir() 函数 模块-遍历文件夹中的所有文件和子文件夹")
        files = os.listdir(filePaths)
        for file_name in files:
            file_path = os.path.join(filePaths, file_name)
            # 处理文件路径及相关操作
            print(file_path)
    
    
    # 读取文件
    """
    使用内置的 open() 函数打开文件。它接收两个参数:文件路径和文件打开模式。
    文件路径可以是绝对路径或相对路径,
    文件打开模式可以是 "r"(读取模式)、"w"(写入模式)、"a"(追加模式)等。
    Python 提供了 with 语句让文件处理更简洁和安全。with 语句会自动关闭文件,
    即使在发生异常的情况下也能保证文件正确关闭
    """
    print("======================读取整个文件内容")
    with open("D:\\pathonFile\\test.txt","r", encoding="utf-8", errors="ignore") as f:
        content = f.read()  # 读取整个文件内容
        print(f'content:【{content}】\n')
    print("======================读取文件的一行内容")
    with open("D:\\pathonFile\\test.txt","r", encoding="utf-8", errors="ignore") as f:
        line = f.readline()  # 读取文件的一行内容
        print(f'line:{line}\n')
    print("======================将文件的内容按行存储到一个列表中")
    with open("D:\\pathonFile\\test.txt","r", encoding="utf-8", errors="ignore") as f:
        lines = f.readlines()  # 将文件的内容按行存储到一个列表中
        index = 1
        for line in lines:
            print(f'{index}-line:{line}')
            index += 1
    file_paths = "D:\\pathonFile"
    # 遍历文件
    osWriteFile(file_paths)
    write_path = "D:\\pathonFile\\testWrite.txt"
    
    print("======================写入文件")
    # 写入文件
    with open(write_path, "w", encoding="utf-8") as f:
        f.write("测试0001")
    
    # 遍历文件
    globWriteFile(file_paths)
    
    # 删除文件
    try:
        os.remove(write_path)
        print(f"文件 '{write_path}' 已成功删除。")
    except OSError as e:
        print(f"删除文件 '{write_path}' 时出错: {e}")
    
    # 遍历文件
    osListdirWriteFile(file_paths)
    
    # 追加文件
    with open("D:\\pathonFile\\test.txt","a", encoding="utf-8") as f:
        f.write("\nNew 17982739827984714987298347.")  # 追加内容到文件末尾
    
    
    # 读取文件
    print("======================读取整个文件内容")
    with open("D:\\pathonFile\\test.txt","r", encoding="utf-8", errors="ignore") as f:
        content = f.read()  # 读取整个文件内容
        print(f'content:【{content}】\n')
        
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
    • 92
    6.2. 测试

    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    医院预约小程序源码,挂号陪护就医功能,提供全方位服务
    阿里云难题学习笔记
    2022年最新安徽建筑八大员(土建)模拟真题题库及答案
    App移动端测试【6】应用程序(apk)包管理与activity
    RT-Thread v5.0.2 发布
    【AI】机器学习——支持向量机(非线性及分析)
    【PostgreSQL启动,停止命令(重启)】
    记录发生同一个实体用在多个不同的controller接口展示不同的字段报空指针的问题。
    华为云大咖说:开发者应用AI大模型的“道、法、术”
    鸡得关节炎有哪些症状 鸡喂什么药预防球菌病
  • 原文地址:https://blog.csdn.net/weixin_38316697/article/details/133315818