Python 从文件读取内容到字典
在 Python 中,字典是一种很常用的数据类型。如果我们需要将一些存储在文件中的数据读取到字典中,该怎么办呢?本文将介绍如何使用 Python 实现从文件读取内容到字典的操作。
准备工作
在开始操作读取文件之前,我们需要先准备好数据文件。假设我们有一个文件叫做 data.txt
,文件的内容如下:
apple,1.50
banana,2.30
orange,1.80
这个文件中存储了三个水果和它们的价格。每个水果和价格使用逗号 ,
来分隔。
读取文件内容到字典
接下来,我们需要编写 Python 代码来读取这个文件的内容,并将其存储到字典中。代码如下:
fruits = {}
with open("data.txt", "r") as f:
for line in f:
line = line.strip().split(",")
fruits[line[0]] = float(line[1])
print(fruits)
上面的代码使用了 Python 中的文件操作函数 open()
来打开文件,r
表示以只读方式打开文件;使用 with
语句可以确保在文件操作完成后自动关闭文件。
接着,我们使用 for
循环来遍历文件的每一行,使用 strip()
函数去掉每行末尾的空白字符,使用 split(",")
函数将每行按逗号分隔成两个部分,并分别将它们赋值给 line
列表。然后,我们将字典中的键设置为 line[0]
,对应的值为 float(line[1])
。
最后,我们使用 print()
函数来输出读取到的字典。运行代码,输出结果如下:
{'apple': 1.5, 'banana': 2.3, 'orange': 1.8}
可以看到,我们成功将文件中的内容读取到了字典中。
处理异常情况
当直接读取文件的时候,我们还需要注意一些可能出现的异常情况,例如打开文件失败等。因此我们需要在代码中进行错误处理。修改后的代码如下:
fruits = {}
try:
with open("data.txt", "r") as f:
for line in f:
line = line.strip().split(",")
fruits[line[0]] = float(line[1])
print(fruits)
except FileNotFoundError:
print("File not found!")
except Exception as e:
print("Error:", e)
我们将整个读取操作都放在了 try
语句块中,在出现异常情况的时候,程序会跳转到对应的 except
语句块中。当出现文件找不到的情况时,程序会输出 File not found!
;其余情况会输出 Error: xxx
。
结论
本文介绍了如何使用 Python 从文件读取内容到字典的方法,并对可能出现的异常情况进行了错误处理。读取文件并将数据存储到字典中,是 Python 中常见的操作之一,掌握这一技能对于处理大量的数据文件非常有用。