python元组的列表或者列表的列表,如何简单快速计算每个item的指定单元?
大家讲道理
大家讲道理 2017-04-17 15:20:41
0
2
703

说的有点绕口,举个经常调用的例子:
对如下元组的list排序:students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
使用lambda函数:sorted(students, key=lambda student : student[2])
或者itemgetter:sorted(students, key=operator.itemgetter(2))

很简洁,一句话。但是是建立在函数支持这样指定key的接口。
那假如我想将所有成绩求个平均值?提取所有人名打印出去?
有没有比较简洁有效的写法?感觉循环遍历访问总是有点不爽...

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全員に返信(2)
黄舟

質問者は、いわゆるループを書きたくありません。おそらく、表示されている for while ループのトラバーサルを書きたくないからです。

一部のシーケンスを処理するには、反復と再帰以外の方法はありません。

明示的な for ループを使用したくない場合は、リスト解析、マップ、フィルター、リデューサー関数、または両方の組み合わせを使用して、1 つの文でループを記述できます。

リーリー
いいねを押す +0
伊谢尔伦

リストの内包を試してみますか?

たとえば、所有者の名前を抽出します

リーリー

平均値を求める

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート