蟒蛇基维。负值

时间:2021-07-10 16:43:42

标签: python kivy

你好,我有一个问题,我正在用 Python 在 Kivy 库中制作一个游戏。我想在函数“ on_touch_down ”中反转 self.hero_pos.points 我知道如何通过从 update_hero 复制粘贴坐标并使它们为负数来实现。但我很好奇我可以用更简单的方式来保持代码干燥吗? :)

SELECT DISTINCT AccountNo FROM myAccountsTable WHERE AccountNo IN(@AccountNo)

1 个答案:

答案 0 :(得分:0)

美好的一天。我不确定“反向”是什么意思。

选项 1

如果 reverse 表示 '[y3, x3, y2, x2, y1, x1]',那将是一个简单的函数。
def reverse(self):
    return self.hero_pos.points[::-1]
#OR
def reverse(self):
    return self.hero_pos.points.copy().reverse()

选项 2

如果反过来你的意思是'[x3,y3, x2,y2, x1,y1]':
def reverse(self):
    n_points = len(self.hero_pos.points)//2
    ans = []
    for r in range(1, n_points, 2):
        ans.append(self.hero_pos.points[r-1])
        ans.append(self.hero_pos.points[r])
    return ans

推荐

我强烈建议您将每个 x,y 值作为一对存储在列表(对列表)中。这将使迭代和重新排序更容易。