Python读写文件案例

306 阅读3分钟

好的,下面是一篇完整的Python文件读写教程:

在Python中,您可以使用内置的open()函数来打开文件并进行读写操作。以下是一个简单的例子:

# 打开文件
file = open("example.txt", "w")

# 写入内容
file.write("Hello, World!")

# 关闭文件
file.close()

上面的代码将创建一个名为example.txt的新文件,并将字符串"Hello, World!"写入该文件。请注意,我们使用了"w"参数来指定我们要写入文件。如果文件已经存在,则"w"参数将覆盖该文件的内容。

您还可以使用"r"参数来读取文件,如下所示:

# 打开文件
file = open("example.txt", "r")

# 读取文件内容
content = file.read()

# 关闭文件
file.close()

# 打印内容
print(content)

上面的代码将打开example.txt文件,并将文件内容存储在content变量中。最后,我们打印出content变量的值。

除了使用"w""r"参数来写入和读取整个文件外,您还可以使用"a"参数将文本附加到文件的末尾,使用"x"参数创建一个新文件(如果该文件已经存在,则会引发错误),以及使用"b""t"参数来指定二进制模式或文本模式。更多细节可以参考Python的官方文档。

在使用readlines()函数时,您需要注意文件的大小。如果文件非常大,那么将文件的每一行都加载到内存中可能会导致性能问题。在这种情况下,您可以考虑使用readline()函数逐行读取文件,而不是使用readlines()函数一次性读取整个文件。

下面是一个使用readlines()函数和统计行数,并在每行前面增加"hello"的示例代码:

# 打开文件
with open("example.txt", "r") as file:
    
    # 读取文件的每一行,并将它们存储在一个列表中
    lines = file.readlines()
    
    # 统计行数
    num_lines = len(lines)
    
    # 打印行数
    print("文件包含", num_lines, "行")
    
    # 在每行前面增加"hello"并打印
    for line in lines:
        print("hello", line.strip())

在上面的代码中,我们首先使用open()函数打开了一个名为example.txt的文件,并使用"r"参数来指定我们要以只读模式打开文件。接下来,我们使用readlines()函数读取文件的每一行,并将它们存储在一个名为lines的列表中。然后,我们使用len()函数计算列表的长度,从而得到文件的行数,并将其存储在num_lines变量中。最后,我们打印出行数。接着,我们使用一个循环遍历lines列表中的每一行,并在每行前面增加"hello",然后打印出来。请注意,我们使用strip()函数来删除每行末尾的换行符。

新建文件test.txt,内容如下,请用python统计出单词的数量。

test.txt

a b c

1 2 3

4 5 6

编写一个Python程序来统计给定文本文件中单词的数量。以下是一个示例程序:

python复制代码
	def count_words_in_file(filename):  

	    with open(filename, 'r') as file:  

	        text = file.read()  

	        words = text.split()  

	        return len(words)  

	  

	filename = 'test.txt'  

	word_count = count_words_in_file(filename)  

	print(f'The file "{filename}" contains {word_count} words.')

在这个示例程序中,我们首先打开名为 filename 的文本文件,并将其内容读取到 text 变量中。然后,我们使用 Python 的 split() 函数将文本分割成单词列表。最后,我们使用 len() 函数计算单词列表的长度,即单词的数量。

请注意,这个程序假设单词之间由空格分隔。如果文本中包含其他分隔符,如标点符号或换行符,您可能需要对文本进行预处理,以确保正确地计算单词数量。