Отсортировать список, используя пользовательскую функцию с несколькими параметрами [дубликат]Python

Программы на Python
Ответить
Anonymous
 Отсортировать список, используя пользовательскую функцию с несколькими параметрами [дубликат]

Сообщение Anonymous »


Я пытаюсь отсортировать список с помощью пользовательской функции. Если функция имеет только один параметр, это нормально. Я не знаю, как быть, если функция имеет 2 параметра.

Например, когда функция имеет только один параметр.

def sort_by_well_range(col): # формат столбца: avgDTS_1100_1200 a=col.split('_')[1:] # удалить строку avgDTS, оставить только диапазон глубины a=[float(col) for col in a] # конвертируем строку в число с плавающей запятой middle_глубина=среднее(а) # печать(средняя_глубина) вернуть среднюю_глубину a=['avgDTS_1100_1200','avgDTS_900_1000','avgDTS_1300_1400','avgDTS_800_850'] b=sorted(a,key=sort_by_well_range,reverse=False) ['avgDTS_800_850', 'avgDTS_900_1000', 'avgDTS_1100_1200', 'avgDTS_1300_1400'] Сейчас я делаю такую ​​функцию с двумя параметрами, потом у меня возникла ошибка, как ее решить? Спасибо
def sort_by_well_range_1(col,start=1): # формат столбца: avgDTS_1100_1200 a=col.split('_')[start:] # удалить строку avgDTS, оставить только диапазон глубины a=[float(col) for col in a] # конвертируем строку в число с плавающей запятой middle_глубина=среднее(а) # печать(средняя_глубина) вернуть среднюю_глубину a=['influx_oil_1100_1200','influx_oil_900_1000','influx_oil_1300_1400','influx_oil_800_850'] b=sorted(a,key=sort_by_well_range_1(start=2),reverse=False) -------------------------------------------------- ------------------------- ТипОшибка ----> 2 b=sorted(a,key=sort_by_well_range_1(start=2),reverse=False) 3 б Ошибка типа: sort_by_well_range_1() отсутствует 1 обязательный позиционный аргумент: 'col'
Ответить

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

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

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

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

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