Python 文件操作与输入输出:读写文件、目录管理完全指南
                           
天天向上
发布: 2025-02-09 09:54:32

原创
979 人浏览过

通过本教程,您将掌握 Python 中的文件操作与输入输出(I/O)技巧。学习如何打开、读取、写入文件,使用 osshutil 模块进行文件路径管理、文件复制与移动。结合实例,您将能轻松进行文件操作,提升项目中的文件管理效率。


详细教程内容:Python 文件操作与输入输出

1. 文件操作

  • 打开文件:open()with 语句:在 Python 中,文件操作通常使用 open() 函数来打开文件,with 语句可以确保文件操作完毕后正确关闭文件。 示例:
  # 使用 open() 打开文件
  file = open("example.txt", "w")  # 打开文件进行写入操作
  file.write("Hello, Python!")  # 写入内容
  file.close()  # 关闭文件

  # 使用 with 语句打开文件(推荐)
  with open("example.txt", "w") as file:
      file.write("Hello, Python with context manager!")

open() 函数的常见模式:

  • "r":只读
  • "w":写入(如果文件不存在,创建文件;如果文件已存在,清空文件内容)
  • "a":追加(在文件末尾添加内容)
  • "b":二进制模式
  • "rb""wb" 等:二进制文件操作

2. 文件读取:read()readline()readlines()

  • read():一次性读取文件的全部内容。 示例:
  with open("example.txt", "r") as file:
      content = file.read()
      print(content)  # 输出文件的全部内容
  • readline():每次读取一行。 示例:
  with open("example.txt", "r") as file:
      line = file.readline()
      while line:
          print(line.strip())  # 去除换行符
          line = file.readline()
  • readlines():将文件的所有行作为列表返回。 示例:
  with open("example.txt", "r") as file:
      lines = file.readlines()
      for line in lines:
          print(line.strip())  # 去除换行符

3. 文件写入:write()writelines()

  • write():将指定内容写入文件。 示例:
  with open("example.txt", "w") as file:
      file.write("This is a line of text.\n")
  • writelines():将一个序列的内容写入文件(如列表)。 示例:
  lines = ["Line 1\n", "Line 2\n", "Line 3\n"]
  with open("example.txt", "w") as file:
      file.writelines(lines)

4. 文件关闭与文件指针位置

  • 在文件操作结束后,调用 close() 关闭文件,释放系统资源。如果使用 with 语句,则会自动关闭文件。
  • 文件指针:每次读取文件时,文件指针会向下移动,读取下一个位置的内容。 示例:
  with open("example.txt", "r") as file:
      print(file.tell())  # 获取当前文件指针的位置
      content = file.read(5)  # 读取 5 个字符
      print(file.tell())  # 再次获取文件指针的位置

5. 文件和目录操作

  • os 模块:用于处理文件路径、创建、删除、重命名文件和目录等操作。 示例:
  import os

  # 获取当前工作目录
  print(os.getcwd())  # 输出当前工作目录

  # 创建目录
  os.mkdir("new_directory")  # 创建新目录

  # 删除文件
  os.remove("example.txt")  # 删除文件

  # 重命名文件
  os.rename("old_name.txt", "new_name.txt")  # 重命名文件

  # 列出目录中的文件和文件夹
  print(os.listdir("."))  # 输出当前目录下的所有文件和文件夹
  • shutil 模块:提供了高级文件操作,如复制、移动、删除文件。 示例:
  import shutil

  # 复制文件
  shutil.copy("source.txt", "destination.txt")  # 复制文件

  # 复制目录及其内容
  shutil.copytree("source_directory", "destination_directory")  # 复制目录

  # 移动文件
  shutil.move("source.txt", "new_location.txt")  # 移动文件

  # 删除目录及其内容
  shutil.rmtree("directory_to_remove")  # 删除目录及其所有内容

通过本教程,您将掌握 Python 中文件操作的基础与进阶技巧,学会如何打开、读取、写入文件,并有效地管理文件和目录。此外,您还将学习如何使用 osshutil 模块来进行文件路径操作、复制、移动等高级文件管理任务。这些技能对于处理项目中的数据文件和文件系统操作至关重要。

发表回复 0

Your email address will not be published. Required fields are marked *