私はランキング型のことをしています。スコアを現在のスコアと比較し、スコアが現在よりも低い場合、プレイヤーは高いスコアを獲得していますが、ここでこのコードを使用すると
print "Score = " + str(score) + ", Compared to = " + str(array[x])
if score < array[x]:
#Do stuff here
しかし、スコアが 4 で配列 [x] が 2 の場合でも、if ステートメントは実行されますか?
私は何か間違ったことをしていますか?
私の理解では、スコア 4 と配列 [x] が 2 の場合、4 は 2 より大きいということは、False が返されることを意味しますか?
完全なコードはこちら
def getRank(array, score):
rank = 0
rankSet = False
for x in range(0, len(array)):
print "Score = " + str(score) + ", Compared to = " + str(array[x])
if score < array[x]:
if not rankSet:
rank = x
print "Set rank to: " + str(rank)
rankSet = True
elif score == array[x] or score > array[x]:
rank += 1
print "Rank higher than " + str(x)
print "Rank = " + str(rank)
return rank
スコア = 4 で、配列が [1, 2] で構成されている場合、これを出力します。
Score = 4, Compared to = 1
Set rank to: 0
Score = 4, Compared to = 2
Rank = 0