нужно сортировать HOST массива строк с помощью ассоциированной скорости поплавкаPythonic способ сортировки массива строки по соответствующему номеру
Есть хороший способ получить массив из отсортированных кортежей? Могу ли я удалить упорядоченный массив?
#!/usr/bin/env python
def getSpeed(url):
if url == 'h1':
return 0.522611856461
elif url == 'h2':
return 0.438368797302
elif url == 'h3':
return 0.443703174591
def orderHosts():
hostInfo = []
ordered = []
hosts = ['h1', 'h2', 'h3']
for host in hosts:
hostInfo.append((host, getSpeed(host)))
print hostInfo
return ordered
if __name__ == "__main__":
print("orderedHosts {}".format(orderHosts()))
выход:
[('h1', 0.522611856461), ('h2', 0.438368797302), ('h3', 0.443703174591)]
orderedHosts []
Почему у вас есть функция только для хранения значений? Почему бы не использовать словарь? Что вы делаете? – MaxNoe
Функция orderHosts должна возвращать массив хоста, упорядоченный по значению getSpeed. 'hostInfo' может быть словарем вместо массива, в котором я добавляю кортежи, поэтому append будет выглядеть как' hostInfo [speed] = host'. Я думал, что будет проще сортировать кортежи. –
Вы меня неправильно поняли. Я говорил о функции getSpeed – MaxNoe