python -文件相关操作

news2024/11/27 6:12:46

文章目录

  • 前言
    • python -文件相关操作
      • 1. 读取文件
        • 1.1. 读取整个文件内容
        • 1.2. 读取文件的一行内容
        • 1.3. 将文件的内容按行存储到一个列表中
      • 2. 写入文件
      • 3. 删除文件
      • 4. 追加文件
      • 5. 遍历文件
        • 5.1. 使用 os 模块 遍历文件
        • 5.2. # 使用 glob 模块 遍历文件
        • 5.3. 使用os.listdir() 函数遍历文件
      • 6. 测试
        • 6.1. 测试脚本
        • 6.2. 测试

前言

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


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. 读取文件的一行内容
print("======================读取文件的一行内容")
with open("D:\\pathonFile\\test.txt","r", encoding="utf-8", errors="ignore") as f:
    line = f.readline()  # 读取文件的一行内容
    print(f'line:{line}\n')
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

2. 写入文件

write_path = "D:\\pathonFile\\testWrite.txt"

print("======================写入文件")
# 写入文件
with open(write_path, "w", encoding="utf-8") as f:
    f.write("测试0001")
    

3. 删除文件

import os
# 删除文件
try:
    os.remove(write_path)
    print(f"文件 '{write_path}' 已成功删除。")
except OSError as e:
    print(f"删除文件 '{write_path}' 时出错: {e}")

4. 追加文件

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

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}')
5.2. # 使用 glob 模块 遍历文件
# 使用 glob 模块 遍历文件
def globWriteFile(filePaths):
    print("======================使用 glob 模块-遍历文件夹中的所有文件和子文件夹")
    # 遍历文件夹中的所有文件
    path = "{}/*".format(filePaths)
    files = glob.glob(path)
    for file_path in files:
        # 处理文件路径及相关操作
        print(file_path)
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)


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')
    
6.2. 测试

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1042420.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言——运算符

C用运算符表示算术运算。 C没有指数运算符,不过,C的标准数学库提供了一个pow()函数用于指数运算。 基本运算符 赋值运算符: 变量名变量值 从右到左 左值和变量名的区别: 变量名是一个标识符的名称,左值是一个可变…

SpringBoot+MinIO8.0开箱即用的启动器

一、代码拉取及安装 1.码云地址 https://gitee.com/qiangesoft/rdp-starter/tree/master/rdp-starter-minio 2.本地安装 代码接入 1.引入依赖 <dependency><groupId>com.qiangesoft.rdp</groupId><artifactId>rdp-starter-minio</artifactId&g…

国密国际SSL双证书解决方案,满足企事业单位国产国密SSL证书要求

近年来&#xff0c;为了摆脱对国外技术和产品的依赖&#xff0c;建设安全的网络环境&#xff0c;以及加强我国对网络信息的安全可控能力&#xff0c;我国推出了国密算法。同时&#xff0c;为保护网络通信信息安全&#xff0c;更高级别的安全加密数字证书—国密SSL证书应运而生。…

如何办一份有价值的企业内刊/报纸?向《华为人》学习就够了

前两天有一个朋友联系华研荟&#xff0c;说他是今年大学毕业加入了一个中型公司&#xff0c;他学的是企业管理&#xff0c;在公司人力资源部门工作。上周老板说公司要办一份自己的内刊&#xff0c;这个工作由人力资源部负责&#xff0c;而人力资源经理就把这个活交给她了。 她…

800G时代来临,千兆光模块万兆光模块还有用吗?

随着科技的不断进步&#xff0c;网络传输速度的需求也越来越高&#xff0c;特别是在云计算、人工智能、物联网等领域&#xff0c;对网络传输速度的要求越来越高。近年来&#xff0c;千兆光模块和万兆光模块已经成为了网络传输的主要手段&#xff0c;但随着800G时代的到来&#…

如何正确使用MySQL的索引呢?

前言: 📕作者简介:热爱编程的小七,致力于C、Java、Python等多编程语言,热爱编程和长板的运动少年! 📘相关专栏Java基础语法,JavaEE初阶,数据库,数据结构和算法系列等,大家有兴趣的可以看一看。 😇😇😇有兴趣的话关注博主一起学习,一起进步吧! 一、索引使用…

掌握这些技巧,轻松批量压缩视频大小

如果您需要批量压缩视频文件的大小&#xff0c;可以借助固乔科技官网提供的固乔剪辑助手软件。下面我们将详细介绍如何使用该软件实现这一目标。 1. 进入固乔科技官网&#xff0c;下载并安装固乔剪辑助手软件。这款软件支持Windows和Mac操作系统&#xff0c;可以方便地在官网上…

Android布局转图片Bitmap

最近再写一个PDA蓝牙连接打印机打印标签&#xff08;包含商品名、原价、现价、尺寸等等...&#xff09;这就需要自己布局一个view样式&#xff0c;转换成bitmap&#xff0c;然后用打印机打印出来。 先看图&#xff1a; 下面事layout布局转bitmap的方法。 网上很多介绍View转b…

雨课堂 运动与健康 网课参考资料

整理于网络&#xff1a;仅用于学习交流讨论&#xff0c;侵删 参考文档&#xff1a;https://www.doc88.com/p-99629779008847.html 参考视频&#xff1a; 运动与健康&#xff08;2021年秋网课答案 69题版本&#xff09;_哔哩哔哩 | https://www.bilibili.com/video/av210112837/…

C语言自定义类型(下)

大家好&#xff0c;我们今天来学习C语言自定义类型剩下的内容。 目录 1.枚举 2.联合 1.枚举类型 枚举顾名思义就是一一列举。 把可能的取值一一列举。 一周的星期一到星期日是有限的7天&#xff0c;可以一一列举。 性别有&#xff1a;男、女、保密&#xff0c;也可以一一列…

2023年【电工(中级)】考试资料及电工(中级)找解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 电工&#xff08;中级&#xff09;考试资料是安全生产模拟考试一点通总题库中生成的一套电工&#xff08;中级&#xff09;找解析&#xff0c;安全生产模拟考试一点通上电工&#xff08;中级&#xff09;作业手机同步…

面试官问:大量的 TIME_WAIT 状态 TCP 连接,对业务有什么影响?怎么处理?

几个方面&#xff1a; 问题描述&#xff1a;什么现象&#xff1f;什么影响&#xff1f; 问题分析 解决方案 底层原理 1.问题描述 模拟高并发的场景&#xff0c;会出现批量的 TIME_WAIT 的 TCP 连接&#xff1a; 短时间后&#xff0c;所有的 TIME_WAIT 全都消失&#xff0…

[linux(静态文件服务)] 1.部署vue发布后的dist网页到nginx 2.偷懒的话可以用宝塔部署nginx

所以说&#xff1a; 1.windows下把开发好的vue工程打包为dist文件然后配置下nginx目录即可。 2.linux上不需要安装node.js环境。 3.这样子默认访问服务器ip地址&#xff0c;就可以打开&#xff0c;毕竟默认就是&#xff1a;80端口。 注意&#xff1a;如果windows下部署正常&…

C++,异常、转换函数、智能指针

目录 一、异常 1 C 异常机制&#xff1a; 2 使用try catch进行异常处理. 3、c 已经内置标准异常类&#xff0c;专业用于抛出的语法中 4 自定义异常&#xff1a; 5 函数只抛出&#xff0c;不处理。让上层函数处理&#xff0c;并且上层函数还可以不处理&#xff0c;让上上层…

机器学习笔记:Huber Loss smooth L1 loss

1 Huber loss 1.1 介绍 Huber Loss是回归问题中的一种损失函数&#xff0c;它结合了均方误差MSE和绝对误差MAE的特点。 Huber Loss在误差较小的时候是平方损失&#xff0c;而在误差较大的时候是线性损失。因此&#xff0c;它在处理有噪声的数据时&#xff0c;尤其是存在离群点…

【从入门到起飞】JavaAPI—BigInteger,BigDecimal的使用方法

&#x1f38a;专栏【Java基础】 &#x1f354;喜欢的诗句&#xff1a;更喜岷山千里雪 三军过后尽开颜。 &#x1f386;音乐分享【The truth that you leave】 &#x1f970;欢迎并且感谢大家指出我的问题 文章目录 &#x1f381;BigInteger&#x1f354;获取BigInteger对象⭐获…

【数据结构-图】最小生成树

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

AWS SAA知识点整理(作成中)

共通 一些信息已经更新了&#xff0c;但参考题的答案还是旧的。 比如&#xff1a; S3的最大读写性能已经提高到 3,500 PUT/COPY/POST/DELETE or 5,500 GET/HEAD requests per second 并且不再要求使用random prefix Storage Amazon S3 为了提高读取的performance: For exam…

CTF 入门指南:从零开始学习网络安全竞赛

文章目录 写在前面CTF 简介和背景CTF 赛题类型介绍CTF 技能和工具准备好书推荐 写作末尾 写在前面 CTF比赛是快速提升网络安全实战技能的重要途径&#xff0c;已成为各个行业选拔网络安全人才的通用方法。但是&#xff0c;本书作者在从事CTF培训的过程中&#xff0c;发现存在几…

每月固定日期提醒app用哪个?手机上可固定日期提醒的工具选择哪一个

在这个繁忙的世界中&#xff0c;时间总是飞逝而过&#xff0c;我们常常需要一些方式来提醒自己按时完成一些重要的工作任务。每月固定日期提醒是其中之一&#xff0c;它可以涵盖很多方面的事情&#xff0c;从生日、账单支付到工作报告的提交。然而&#xff0c;如何有效地管理这…