python - 读取文件并将内容插入字典

标签 python file dictionary

我有一个包含餐厅信息的文本文件,需要将此信息插入到多个词典中。属性是名称、评级、价格范围、菜系

这是txt的内容

Georgie Porgie 
87% 
$$$ 
Canadian,Pub Food

Queen St. Cafe 
82% 
$ 
Malaysian,Thai

到目前为止,我已经阅读了文件并将内容抓取到列表中。

content = [];
with open(file) as f:
        content = f.readlines();
        content = [x.strip() for x in content];

需要插入三个字典 names_rating,price_names,cuisine_names 我该怎么做?

最佳答案

看到你给的文件的例子,元素是空格分隔的。

所以,你的任务是:

  • 打开文件
  • 阅读每一行
  • 按空格拆分条目
  • 保存字典中的词条

这将按如下方式完成:

names_rating = {}
price_names = {}
cuisine_names = {}
with open(file) as f:
    lines = []
    for line in f:
        content = f.readline().rstrip()
        if content != ''
            lines.append(content)
        if len(lines) > 4 :
            name = lines[0]
            rating = lines[1]
            price = lines[2]
            cuisine = lines[3].split(',')
            names_rating[name] = rating
            price_names[name] = price
            cuisine_name[name] = cuisine
            lines = []

在此,逐行读取文件并将结果附加到列表 lines 中。当列表的大小超过 4 时,所有的属性都被读入列表。然后对它们进行处理以将数据保存在字典中。然后清空列表以再次执行该过程。

关于python - 读取文件并将内容插入字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44743969/

相关文章:

python - sudo pip install VS pip install --user

c++ - 如何仅删除/删除可执行文件(又名没有扩展名的文件)

c++ - 使用模板作为 std::map 中的键

Python - 字典 - 修改 __getitem__?

Python广度优先搜索优化

python - 在远程IPython集群上运行作业时出现"execution_count"错误

python - 将 JSON 模式转换为 Python 类

python - 为什么 3+++ 5 在 Python 中有效

c - 文件读取问题 - 平行版生命游戏

file - 为什么程序要/偏爱使用稀疏文件?