Если sort_by
является переменной, содержащей строку с именем атрибута, который вы хотите использовать для сортировки, и вы хотите использовать operator.attrgetter()
, вы можете использовать это, чтобы преобразовать значение атрибута, который он выбирает, во все строчные буквы символы для сравнения при сортировке:
members_list.sort( key = lambda mbr: operator.attrgetter( sort_by )( mbr ).lower(),
reverse = False )
Хотя что-то вроде следующего легче читать, а также более эффективно:
get_key = operator.attrgetter( sort_by )
members_list.sort( key = lambda mbr: get_key( mbr ).lower(), reverse = False )