У меня есть dict.keys()
, как показано ниже:
dict_keys(['[TH03438A] TRIPLE ACTION 175GM Twinpack_MY',
'[1051931] CTBM TWISTER FH M +CAP 1PK ASIA*72',
'[1108229] AJAX F'LOSO 2L AB APPLE/EPAL SEGAR (NEW)',
'[1051987] CTBM TWISTER FH S +CAP 1PK ASIA*72',
'[1106530] SOFTLAN 2L FLORAL FANTASY (PINK)',
'TRIPLE ACTION 175GM TWINPACK_MY'])
Я хотел бы отсортировать его по названию продукта (ключам) после некоторых манипуляций, удалив номер продукта, если он есть (например: [TH03438A]
) и пробел перед фактическим названием товара. Таким образом, отсортированные ключи должны быть возвращены следующим образом:
dict_keys(['[1108229] AJAX F'LOSO 2L AB APPLE/EPAL SEGAR (NEW)',
'[1051931] CTBM TWISTER FH M +CAP 1PK ASIA*72',
'[1051987] CTBM TWISTER FH S +CAP 1PK ASIA*72',
'[1106530] SOFTLAN 2L FLORAL FANTASY (PINK)',
'TRIPLE ACTION 175GM TWINPACK_MY',
'[TH03438A] TRIPLE ACTION 175GM Twinpack_MY'])
Я пытался сделать это следующим образом:
test = sorted(report_table.keys(), key=lambda k : k.split('] ')[-1])
Но я думаю, что я делаю это неправильно; каким должен быть правильный аргумент для ключа (функция сортировки), чтобы я мог получить доступ к отдельным ключам dict?