如何在 Python 中的 OrderedDict 中访问上一个键和值?我正在尝试计算从起点到折线的每个点的距离。在 self._line 中,键是一对坐标 (x, y),值是从折线开始到线段的距离。在下面的代码中,起始位置距离为零,接下来是所有折线段的总和。没有标志 prev_x, prev_y 有没有更优雅的方法来做到这一点
self._line = OrderedDict()
prev_x, prev_y = None, None
for x, y in passed_line:
self._line[(x, y)] = 0 if prev_x is None and prev_y is None else self._line[(prev_x, prev_y)] + math.sqrt((x - prev_x) * (x - prev_x) + (y - prev_y) * (y - prev_y))
prev_x, prev_y = x, y