Я пишу программу для сортировки списка входных строк (названий песен).
Эти названия песен содержат латексные символы, такие как $ \ lambda $, которые я хочу
вместо того, чтобы сортироваться как «лямбда», я использую возможность применить
функция для каждого элемента во время сортировки. как это:
# -*- coding: UTF8 -*-
def conv( inp ):
if inp == '$\lambda$':
return 'lambda'
else:
return inp
mlist = []
mlist.append('martin')
mlist.append('jenny')
mlist.append('åse')
mlist.append('$\lambda$')
mlist.append('lambda')
mlist.append('\her')
print (mlist)
mlist = sorted(mlist, key=conv(str.lower))
print (mlist)
Но по какой-то причине, когда я добавляю знак lambda
или \her
, он преобразует его в \\her
или $\\lambda$
, могу ли я предотвратить это?