SyntaxError dict [0]不在列表中,但列表中的dict [0]起作用吗?

时间:2019-02-21 12:41:27

标签: python python-3.x python-3.5

首先使用python3.5进行iam

我必须做一些比较文件并编写特定行的内容,但现在遇到了问题。

我有一个标记列表,可以指定文件的行

a = ["bla", "blub"]

,第二个文件是标记和相应行的字典。

b = {"bla" : "1", "blub" : "2", "nope" : "3"}

所以,如果我现在这样做

for b[0] in a:
    print(b[b[0]])

我得到

1
2

就像我想要的那样,但在其他情况下我不想做

for b[0] not in a:
    print(b[b[0]])

,我得到的不是SyntaxError。 有人可以解释一下为什么这行不通,并且也许找到一种方法来打印未包含在其中的键的所有值吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

您想像其他人提到的那样完全改变逻辑。要获取列表中不存在的字典中键的值,可以执行以下操作:

b = {"bla" : "1", "blub" : "2", "nope" : "3"}
a = ["bla", "blub"]

for x in b.keys():
  if x not in a:
    print(b[x])