前提
Pythonでリストの並び替えをしたいです。
実現したいこと
Python
list = [('1', 'f', 250), ('2', 'f', 400), ('3', 'f', 100), ('4', 'm', 150), ('5', 'm', 700), ('6', 'm', 350)]
以上のリストを、
第2要素が'f'については、第3要素が昇順となるように並べ替え、
第2要素が'm'については、第3要素が降順となるように並べ替えたいのです。
Python
list = [('3', 'f', 100), ('1', 'f', 250), ('2', 'f', 400), ('5', 'm', 700), ('6', 'm', 350), ('4', 'm', 150)]
order_byやsortを使うと、全てに昇順、降順が適応されてしまいます。
リストを二つに分けてから、それぞれを並び替えて、リストをくっつけるなどはあまりしたくありません。
できるだけシンプルな処理で、並び替えができますでしょうか?
0 コメント