python:在字典中创建一个列表

标签 python list dictionary

我刚开始使用 python,我正在尝试创建一个程序来读取如下所示的文件:

AAA x 111
AAB x 111
AAA x 112
AAC x 123
...

该文件有 50 行长,我正在尝试将字母变成字典中的键以及与键对应的数字列表。

我希望输出看起来像这样:

{AAA: ['111', '112'], AAB: ['111'], AAC: [123], ...}

这是我试过的

file = open("filename.txt", "r") 
readline = file.readline().rstrip()
while readline!= "":
    list = []
    list = readline.split(" ")
    j = list.index("x")
    k = list[0:j]
    v = list[j + 1:]
    d = {}
    if k not in d == False:
        d[k] = []
    d[k].append(v)
    readline = file.readline().rstrip()

我的 if 语句中不断出现语法错误,我无法弄清楚我做错了什么。

最佳答案

你在末尾缺少冒号,你也可以这样写:

if k not in d:
    d[k] = [v]
else:
    d[k].append(v)

关于python:在字典中创建一个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13674827/

相关文章:

python - 光谱数据的基线校正

python - SQLAlchemy:查询期间失去与 MySQL 服务器的连接

python - 如何从单个词典创建词典列表?

list - Scala错误: value sort is not a member of List

C#:字典 TryGetValue 创建实例而不是获取引用

c++ - 将python字典翻译成C++

python - 使用 scipy 从 delaunay 三角剖分输出顶点

python - 使用 Mechanize 填写和提交表格

c++ - 在 C++ 中增量构建编译时间列表

javascript - 如何使用 d3.js 在世界地图上绘制 3D 条形图?