Python3读取文件的操作详解
在Python中,读取文件是很常见的操作,本文将详细讲解如何在Python中读取文件。
打开文件
在Python中,打开文件需要使用到Python内置的open()
函数。该函数有两个参数:文件名和模式。文件名可以是相对路径或绝对路径,模式用于指定文件打开后的读写模式。常见的文件打开模式如下:
'r'
:只读模式,文件指针位于文件开头;'w'
:只写模式,如果文件不存在则会创建一个新文件,文件指针位于文件开头,如文件已经存在则会清空该文件;'x'
:排它性创建,文件存在时会抛出异常;'a'
:追加模式,文件指针位于文件结尾,如果文件不存在则会创建一个新文件;'b'
:二进制模式;'t'
:文本模式(默认值)。
下面是一些示例,演示如何打开文件:
# 打开一个文件
file = open('file.txt', 'r')
读取文件
如果已经打开文件,则可以利用Python的文件对象的方法来读取文件内容。有多种方法可以读取文件,比如read()
,该方法会一次性读取整个文件,我们也可以指定读取的字节数。
# 打开一个文件
file = open('test.txt', 'r')
# 读取整个文件
content = file.read()
print(content)
# 关闭文件
file.close()
还有一个方法是readline()
,该方法会每次读取一行:
# 打开一个文件
file = open('test.txt', 'r')
# 读取一行
line = file.readline()
print(line)
# 关闭文件
file.close()
除此之外,还有一个方法是readlines()
,该方法会一次性读取整个文件,并返回一个列表,每一行作为一个列表元素。
# 打开一个文件
file = open('test.txt', 'r')
# 读取文件所有行
lines = file.readlines()
for line in lines:
print(line)
# 关闭文件
file.close()
示例说明1
下面是一个示例,演示如何读取一个包含100个数字的文件,并求出这些数字的平均值:
file = open('numbers.txt', 'r')
numbers = []
for line in file:
numbers.append(int(line.strip()))
file.close()
average = sum(numbers) / len(numbers)
print("The average of numbers is:", average)
在这个示例中,我们首先打开包含100个数字的文件numbers.txt
,并将每行的数字添加到一个列表中。然后计算这些数字的平均值。
示例说明2
下面是一个示例,演示如何读取一个包含单词的文件,并统计每个单词出现的次数:
file = open('words.txt', 'r')
word_count = {}
for line in file:
words = line.strip().split()
for word in words:
if word not in word_count:
word_count[word] = 1
else:
word_count[word] += 1
file.close()
print("Word count:")
for word, count in word_count.items():
print(word, count)
在这个示例中,我们打开一个包含单词的文件words.txt
。然后使用一个Python字典来统计每个单词出现的次数。最后,我们输出每个单词和它出现的次数。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python3读取文件的操作详解 - Python技术站