По поводу сортировки в
документации есть такой пример:
>>> sorted("This is a test string from Andrew".split(), key=str.lower)
['a', 'Andrew', 'from', 'is', 'string', 'test', 'This']
Объясните пожалуйста:
- Почему параметр в функции ключа именован как
str
. Я пробовал именовать по другому и в результате получал сообщение об ошибке: NameError: name 'str2' is not defined. Почему именно str?
- Результат выражение, которое находится по правую сторону от
key=
представляет из себя приведённую в нижнему регистру строку, но по непонятной причине она считается ключом, по которому в дальнейшем происходит сортировка. то есть значение считается ключом
Вам не кажется это всё странным?