Transcript for:
リスト内包表記の基礎知識

はいこんにちは今回は python 入門の第十一回目を始めていきたいとおもい ます 今回学習する内容はですね以前まで学習していた リスト7日でもリスト内包表記っていうのをやっていきたいとおもいます このリスト内包表記っていうのは python 独特の文法でもありますし非常に よく使う文法でもあるのでしっかりと学習していきましょう まずですね今までリストを作成するといったときにどうやってやっていたかっていう ところを思い出していただきたいんですけども 前回まではですね芳文とアペンドっていうのを使ってまぁリストを作成してあげたん ですねそれでてやっていたかっていうと l をですね カラーのリスト作成す てあげてで4分でですねこちら愛の中にアレンジで通常どんどん上げていくと 今回0から4まで入れていきたいと思うんですけども でこの4分で回してる愛を アペンドを使ってですね はい ベンロを使ってあげてこの l にどんどん この愛に入ってくる0から4ですねこれを追加してあげるとレッドですね 結果確認してみるとわかるんですけどもこちらのといいですね 0から4が入ってるリストを作成できますとか ただですね python でこういったリストを作成するときはですね この リスト名.アペンド的確じゃなくて今回紹介するですね リスト内包表記っていうのを使ってあげるのがベストプラクティス 一番良い方法なんですねなのでそれを今回紹介していくんですけども まずは先に書いてしまいますね リスト内包表記で上と同じリストを作成するにはですね l 中にリストを作ってあげ ますと でこのリストを作成するときにですねこの資格この中に またコードを書いていくんですね で実際に書いていくと愛の口愛犬 レンジの 5ですねこれで先ほどと同じリストを作成できるんですね でこれプリントしてみるとはいこのように 先ほどと同じリストですね0から4まで格納されたリスト作成できました デコレですね最初に慣れるまでは非常にわかりづらいと思うんですね なので今回はですねこの書き方のコツを紹介していこうと思うんですけども 書き方のコツとしてはですねまず最初にこのからのリストを作成しておくんですね なのでこの l =からのリストですよね で体にリスト作成し終えたら4分だけ書いてあげるんですね ここでいい ie ピールレンジの子とかですよね これだと最初の for 文の条件式と同じ部分しかまだ書いていない状態になります ここですね でこの後でですね追加する要素4の前に書いてあげると こうするとですね先ほどと同じように内包表記の形でリストを作成できるようになり ます それでですねこのリスト内包表記っていうのを使うとまぁ何が嬉しいんだという話に なってくるんですけどもまぁ単純にこのコードが短くなるっていう側面もありますし アドレスねえパペんどを使ってリストを作成するよりもそれが高速になるんですね実際 にですねその処理する時間を 計測してみたいと思うんですけども上でですねアペンドを使った リストの作成方法ですとねこれ実行してみるとですねはい こうやってですね処理ティックが出てくるんですけどもどう見ていただきたいのはこの 最後の部分ですねべストーブさん頃535 ans パーループ世界であるここですね これはですね何を言ってるかっていうと ループを何回も行ってあげてそのうちのベストのタイムがここに書かれているんですね 今回だとこちらの数字ですねでこれに対してリスト内包表記を使った時どれくらいの 速度になるかという話なんですけども こっちも熟考してあげましょうそうするとですねこっちはですね先ほどより少し 4数字が小さくなっているのがわかるかなと思います まあ今ですねこの数字のゼロから選んで結局の所要素5つしか追加してないのでそんな に速度の差は出ないんですけどもこれがですね もっと大量のデータを扱うといった感じになったらこの数字がもっと差が開くように なりますので そのてくるとですねできれないかこの内包表記で書いてあげた方が 処理を早くお子 られるのねこっちの方が良いかなと思います さらにですねこのリスト内包表記っていうのは皮膚分も合わせて描けるようになるん ですね で実際に書いていくんですけどもエールを用意してあげて ってここでですね先ほどと同じように数字の0から4を格納するリストを作るんです けども まずですねこれからがリストを作りました その次報軍の条件の部分だけ書いてあげればいいですよね でその後で4の前にこの愛を書いてあげればこれだけで内包表記が出来ました でこれ一旦プリントしてあげて そうするとですねこれ0から4のリストが作成できます でこのうちですねじゃあ3で割り切れるものだけを格納したいよと言った時は た今まで if 文ての使っていたんですねこれその if 文っていうのをこの s と内包表記の中でも描けるようになるんですね でそれはどうやって書くのかという をこの4の後にですねもし アイガー にでまり切れたらですねえっ はいこのようにですね方本の条件の後に if 文というのを書いてあげられるんです ね でこれでチーフとエンターすれば はいこのようににで割り切れる値だけが格納されたリストを作成できました でこれはですね要するに安倍ん路を使って書くとどうなるかっていうところで紹介して いくんですけども ベンドの前だとですねまだ彼らのリストを準備してあげて でここで構文でですねまぁ今まで通り レンジの 号でですねでここで if 文を今まで書いてたんですよね えっ でこれで0で破りきれた場合は l に abend して ここで愛ですね こうすることでですね 兄で割り切れる数字だけが入ったリストを作成できていました はいこちらの通りですね上野内包表記と同じ結果になっているかと思います でい分まで追加するとですねこれだけで今4行 使っているんですけどもま内包表記であれば1行で済むといった感じでやっぱりですね できるだけ内包表記を使ってあげたほうが簡潔にリストを作成できますね はいさらにですねここはちょっと聞き流しでも大丈夫なんですけども このですね内包表記を使うとまぁ処理が速くなる っていった部分なんですけども逆にですね このからのリストを作成して で法文で0から4までの数字を出力してあげて でそれですね各数字に対して l にあぺん通してあげると でこのアペンドですね毎回読んでいるからこの処理っていうのが遅くなるんですね なのでこの内包表記ともしくは for 文+ アペンドでリストを作成した時の場合なんですけども これはですね アペンドを使う方は これ結局5回アペンド準備していることになりますのでそのせいで遅くなっているんだ なと そのぐらいの気持ちでですね理解していただけるといいのかなと思います はい今回はリスト内包表記について紹介してきました 内容としてはですね結構簡単にサクッと懲戒してしまったんですけども重要度としては かなり高い分野になりますので 前回のですねリストと後リストとメソッドっていう単元をですへ復讐しつつこのリスト 内包表記も 所に復讐していただけるといいのかなと思います 次回以降はですねまた同じデータ構造の中でも たプルっていうのをやってあげてでその次にですね 辞書とまたそのメソッドについて紹介していってなんとですね 簡単な集合っていうのをやっていきたいと思っています ここまでできるとですねと今まで学習した範囲で何か簡単なプログラムを作成すると いったことはですね できるようになるので少し難しいかなぁと思ってきた方もいるかもしれないんですけど ももう少し頑張っていきましょう 今公園の動画もご視聴いただきありがとうございました