Грубо говоря, вот ложка, которой я вас кормлю:
Таким образом, вы берете входные данные для каждого пробела.
entries = the_input.split() # str.split with no arg splits on whitespace
Теперь у вас есть список "Car@Number». L oop сверх этого, разделенный символом "@".
car_name, mileage = entry.split("@")
mileage = float(mileage) # parse the string into a floating point number
Примечание: вы хотите l oop записей и поместить каждую в список, который вы создали ранее, например: complete_entries
, как поэтому
complete_entries.append((car_name, mileage))
, чтобы заполнить список tuples
из (car_name, mileage)
, тогда вы можете сделать
print(sorted(complete_entries, key=lambda x: x[1])
Для печати нового списка sorted
, где key
- это функция lambda
, которая принимает один параметр x
и индексирует элемент секунд x (x[1]
), который соответствует полю mileage
кортежа.