Возвращает ранг каждого элемента (количество различных меньших значений) с сохранением дубликатовPython

Программы на Python
Ответить
Anonymous
 Возвращает ранг каждого элемента (количество различных меньших значений) с сохранением дубликатов

Сообщение Anonymous »

Мне нужно, чтобы для каждого числа в списке было количество различных значений, меньших его, и мне нужен результат, согласованный с входными данными (поэтому дубликаты создают повторяющиеся выходные данные). Мой текущий код объединяет уникальные ключи и возвращает одно значение на каждый уникальный номер:

Код: Выделить всё

   def numbers(nums):
n = nums
# 1,2,3,4,5
counts = {}

newL = list()
newVal = 0
for j in range(len(n)):
if n[j] not in counts:
counts[n[j]] = 0
newL = list(counts.keys())
print(newL)

for i,k in counts.items():
cur = i
for m in newL:
if cur > m:
counts[cur] += 1
else:
pass

val = list(counts.values())

return val

l = [7,7,7,7,7,]
print(numbers(l))
Что я получаю: Ожидается:

Подробнее здесь: https://stackoverflow.com/questions/798 ... -duplicate
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»