5.1 文件操作(读写追加等)

Posted 博客0214

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5.1 文件操作(读写追加等)相关的知识,希望对你有一定的参考价值。

在 Python 中,文件操作是一项常用的任务。本节将介绍如何执行基本的文件操作,如读取、写入和追加数据。我们将通过实例代码详细讲解每个知识点。

5.1.1 打开文件

在对文件进行操作之前,我们需要使用 open() 函数打开它。open() 函数接受两个参数:文件名(包括路径)和模式。以下是一些常用的模式:

  • \'r\':只读模式(默认)
  • \'w\':写入模式,如果文件不存在则创建,如果文件存在则清空内容
  • \'a\':追加模式,如果文件不存在则创建,如果文件存在则在文件末尾追加内容
  • \'x\':独占创建模式,如果文件不存在则创建,如果文件存在则引发异常
  • \'b\':二进制模式
  • \'t\':文本模式(默认)

以下是一个示例:

file = open("example.txt", "r")

这个示例中,我们打开了一个名为 example.txt 的文件,模式为只读(\'r\')。请注意,如果文件不存在,打开文件将引发 FileNotFoundError 异常。你可以使用 try-except 语句捕获这个异常。

5.1.2 读取文件

有多种方法可以从文件中读取数据。以下是一些常用方法:

1. read()

read() 方法用于读取文件中的所有内容。以下是一个示例:

file = open("example.txt", "r")
content = file.read()
print(content)
file.close()

请注意,在操作完成后,我们使用 close() 方法关闭文件。这是一个很好的做法,因为它可以确保立即释放文件资源。

2. readline()

readline() 方法用于读取文件中的一行。以下是一个示例:

file = open("example.txt", "r")
line = file.readline()
print(line)
file.close()

3. readlines()

readlines() 方法用于读取文件中的所有行,并将它们作为字符串列表返回。以下是一个示例:

file = open("example.txt", "r")
lines = file.readlines()
print(lines)
file.close()

4. 使用 for 循环逐行读取

你还可以使用 for 循环逐行读取文件。以下是一个示例:

file = open("example.txt", "r")
for line in file:
    print(line)
file.close()

5.1.3 写入文件

要将数据写入文件,我们需要以写入模式(\'w\')或追加模式(\'a\')打开文件。然后,我们可以使用 write() 方法将数据写入文件。以下是一个示例:

file = open("example.txt", "w")
file.write("Hello, World!")
file.close()

在这个示例中,我们以写入模式打开了 example.txt 文件,将 "Hello, World!" 字符串写入了文件,然后关闭了文件。

5.1.4 使用 with 语句

使用 with 语句可以简化文件操作。with 语句会自动处理文件的打开和关闭,即使在发生异常时也是如此。以下是一个示例:

with open("example.txt", "r") as file:
    content = file.read()
    print(content)

在这个示例中,我们使用 with 语句打开了 example.txt 文件,并将其内容读取到 content 变量中。当 with 语句块结束时,文件将自动关闭。

这些就是 Python 文件操作的基本知识。在实际编程中,你可能需要根据具体需求对这些操作进行组合和扩展。希望这些示例可以帮助你更好地理解文件操作,并为你的实际项目提供帮助。

5.1.5 删除文件

要删除一个文件,我们可以使用 Python 的 os 模块。以下是一个示例:

import os

filename = "example.txt"

if os.path.exists(filename):
    os.remove(filename)
else:
    print("The file does not exist.")

在这个示例中,我们首先导入了 os 模块。然后,我们检查文件是否存在。如果存在,我们使用 os.remove() 函数删除文件;如果不存在,我们打印一条提示信息。

请注意,在使用 os.remove() 函数删除文件时,需要确保文件已关闭,否则可能引发异常。

5.1.6 文件操作总结

我们已经介绍了 Python 中的基本文件操作,包括:

  • 打开文件
  • 读取文件
  • 写入文件
  • 关闭文件
  • 使用 with 语句简化操作
  • 删除文件

通过结合这些操作,你可以完成许多实际任务中的文件操作需求。希望这些详细的示例对你有所帮助。祝你学习顺利!
推荐阅读:

https://mp.weixin.qq.com/s/dV2JzXfgjDdCmWRmE0glDA

https://mp.weixin.qq.com/s/an83QZOWXHqll3SGPYTL5g

java IO File按行读写追加

java IO File按行读写追加

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class FileUtil2 

	public static void main(String[] args) 
		FileUtil2.write("d://wwwc", "ooooooooooooooo");
		FileUtil2.read("d://wwwc");
	

	public static void read(String path) 
		try (FileInputStream inputStream = new FileInputStream(path);
				BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));) 
			String line = null;
			while ((line = bufferedReader.readLine()) != null) 
				System.out.println(line);
			
		 catch (Exception e) 
			e.printStackTrace();
		
	

	// 以追加的方式将文本输出到本地文件中
	public static void write(String path, String content) 
		File file = new File(path);
		if (!file.exists()) 
			try 
				file.createNewFile();
			 catch (Exception e) 
				File parentFile = file.getParentFile();
				parentFile.mkdirs();
				try 
					file.createNewFile();
				 catch (Exception e2) 
					e2.printStackTrace();
				
			
		
		try (FileOutputStream fos = new FileOutputStream(file, true);
				OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF-8");) 
			osw.write(content);
			osw.write("\\r\\n");
		 catch (Exception e) 
			e.printStackTrace();
		
	

以上是关于5.1 文件操作(读写追加等)的主要内容,如果未能解决你的问题,请参考以下文章

Python文件的读写操作

文件-读写追加已经文件操作

文件的读写,对文件内容追加操作

Python读写/追加excel文件Demo

C 语言文件操作 ( 配置文件读写 | 写出或更新配置文件 | 追加键值对数据 | 更新键值对数据 )

集合深浅拷贝文件操作(读写追加)函数初识(参数)