使用多个键读取文本文件

时间:2019-07-17 23:18:32

标签: python data-structures

我正在尝试打开/读取具有多个“组”值,一些列表,一些整数的文本文件。

我正在努力找出实现此目标的最佳方法。

我在下面提供了我要导入和操作的文本文件的示例。基本上,文本文件的每一行都包含6个值,并且所有这些值都相互关联。我的最终目标是能够设置几乎“列表列表”,以便我可以将六个值的每个集合几乎定义为一个。

有人对此有任何想法吗?

house, brick, 876, no, yes, 3
apartment, wood, 345, yes, yes, 1
condominium, brick, 453, no, yes, 8
etc... 

我的最终目的是能够对每个变量进行分类(例如building type == housematerial == brick等,并能够搜索这些变量。

1 个答案:

答案 0 :(得分:0)

因此,只需尝试打开文件,然后就需要在换行符和文本的逗号之间进行拆分。这将为您提供所需的“列表列表”。此外,我建议您重新映射字典中的所有内容,以便可以通过有用的键访问项目。

可能是这样的:

with open('test.txt', 'r') as f:
    data = f.read()

    data = data.split("\n")
    list_of_lists = [row.split(",") for row in data]
    final_list = [{"building_type": row[0].strip(),
                   "material": row[1].strip(),
                   "your_keys": row[2].strip()} for row in list_of_lists]
    print(final_list)

输出:

[{'building_type': 'house', 'material': 'brick', 'your_keys': '876'},
 {'building_type': 'apartment', 'material': 'wood', 'your_keys': '345'}, 
 {'building_type': 'condominium', 'material': 'brick', 'your_keys': '453'}]