我尝试从pygame运行quadtree example(该页面上的第一段代码)但是在一个非常混乱的行上出现语法错误:
in_nw = item.left <= cx and item.top <= cy
语法错误指向表达式(<=
)中的第二个等号。我知道分号可用于在一行上放置多个表达式,但这并不意味着它与以下内容相同:
in_nw = item.left <
= cx and item.top <
= cy
问题是,这对前导等号没有任何意义。那里肯定还有别的东西。我花了几个小时试图解决这个问题并阅读复合语句。
有谁知道这是假设做什么或用不同的方式写它?我认为它适用于作者以及在他下方使用相同语法发布类似代码的人,但由于某种原因它不适用于我。我真的只想重写这部分,而不必解密他的其余代码来弄清楚他想要做什么。
答案 0 :(得分:5)
这只是一个标记问题。 <
应为<
整行应该是:
in_nw = item.left <= cx and item.top <= cy
答案 1 :(得分:3)
语法相当奇怪,出于某种原因,它表示&amp; lt而不是小于符号。这是常用的HTML和其他标记语言,其中尖括号用于实际标记,而不是小于或大于。
更换&amp; lt with&lt;和&amp; gt with&gt;应该解决它。