Я занимаюсь типом ранжирования, что происходит, я сравниваю оценку с текущим счетом, и если оценка ниже, чем текущая, то игрок получает высокий балл, но при использовании этого кода здесь
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
он печатает это, если score = 4, и массив состоит из [1, 2]
Score = 4, Compared to = 1
Set rank to: 0
Score = 4, Compared to = 2
Rank = 0