给定一个名为' x'的浮点列表,我想创建一个dict,使用dict理解将x [1:-1]中的每个x映射到它的邻居。我尝试过以下一行:
neighbours = {x1:(x0,x2) for (x0,x1,x2) in zip(x[:-2],x[1:-1],x[2:])}
但是,语法似乎无效。我做错了什么?
答案 0 :(得分:22)
Dict comprehensions仅适用于Python 2.7以上版本。对于早期版本,您需要带有生成器的dict()
构造函数:
dict((x1, (x0,x2)) for (x0,x1,x2) in zip(x[:-2],x[1:-1],x[2:]))