Найти - Пользователи
Полная версия: Выбор элемента из спискапо несколькким параметрам
Начало » Python для новичков » Выбор элемента из спискапо несколькким параметрам
1
AlSolo
Вообщем есть список элементов(парковок). У меня пока выбирает с наибольшим кол-вом свободных мест
p = max(all_parkings, key=Parking.get_free_space_count)

Как сделать, что бы можно было выбрать элемент по 2 параметрам? ПОМОГИТЕ! Спасибо.
PooH
AlSolo
p = max(all_parkings, key=Parking.get_free_space_count)
Как сделать, что бы можно было выбрать элемент по 2 параметрам?
key - вообще-то функция, вы в ней можете что угодно делать. Вводите метрику на своих параметрах и вперед.
import math

ls = ((1,1,8),(1,2,2),(2,1,7),(2,2,3))

def distance(x):
return math.sqrt(x[0]*x[0]+x[1]*x[1]+x[2]*x[2])

max(ls, key=distance)
AlSolo
да! а сразу 2 key можно использовать? т.е. как нибудь p = max(all_parkings, key=Parking.get_free_space_count,get_distance)
PooH
AlSolo
да! а сразу 2 key можно использовать? т.е. как нибудь p = max(all_parkings, key=Parking.get_free_space_count,get_distance)
Нет, но можно вернуть из функции кортеж, тогда при одинаковых первых элементах будут сравнены вторые и т.д.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB