2016-09-27 39 views
1

我有一個有兩個整數屬性的類_xplevel。我有一個while循環這兩個比較,以確保它們都是正面的:像PyCharm所說的那樣,這種鏈式比較真的可以簡化嗎?

while self.level > 0 and self._xp < 0: 
    self.level -= 1 
    self._xp += self.get_xp_quota() 

我PyCharm宣稱,這可以簡化爲:

Simplify chained comparison

能是真的嗎?我想確保在向PyCharm報告錯誤之前。

我也發現a similar question但在這種情況下,兩個變量是相同的,我有兩個不同的屬性。

+1

您的*值*是一樣的。 :-) –

+0

@MartijnPieters哦,該死,傻了。謝謝! :) –

回答

4

IIRC,你可以爲改寫這個:

while self._xp < 0 < self.level: 
    self.level -= 1 
    self._xp += self.get_xp_quota() 

按照上述參考。有兩個不同的屬性或相同的變量並不重要,最終你只是比較每個屬性的值。

讓我知道這是否有效。

+0

是的,這是正確的,謝謝:) –