【Python】map関数まとめ【基本講座】
Pythonには、map()関数という別の関数に引数を渡しことができる関数があります。
あるリストの要素を関数内で処理してコレクションしていけるので、何かと自由度が上がると思います。
map()関数をマスターしよう
map()関数の基本書式
map()関数の基本書式を例を使って見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
def hoge(a): return a*100 l = [1,2,3,4,5] for i in map(hoge, l): print(i) >> 100 200 300 400 500 |
例では、リストから要素をひとつずつ取り出していますが、リストとして取り出すことも当然できます。
1 2 3 4 5 6 7 8 9 10 |
def hoge(a): return a*100 l = [1,2,3,4,5] result = list(map(hoge, l)) print(result) >> [100, 200, 300, 400, 500] |
また、これはlambda文でも記述できます。
1 2 3 4 5 6 7 |
l = [1,2,3,4,5] result = list(map(lambda a:a * 100, l)) print(result) >> [100, 200, 300, 400, 500] |
また、以前やった内包表記でも記述できます。map()関数やlambda文も使えないときは、これを使わないといけませんね。
1 2 3 4 5 6 7 |
l = [1,2,3,4,5] result = [a * 100 for a in l] print(result) >> [100, 200, 300, 400, 500] |
map()関数のまとめ
map()関数を見てきていかがでしたか?いろいろ書き換えができる点は、十分に練習すべきですね。
あと、例題を見ていて少し気になったことはありませんか?
map()関数ってリストを返すんだね?って思いましたか?
実は、これ半分正解です。
というのも、Python2まではmap()関数はリストを返していたのですが、Python3からは違います。イテレータを返すようになりました。なので、list()をしないと想定と違う値が返ることになるのです。
Pythonの公式ドキュメントにはこう書かれています。
map(function, iterable, …)
function を、結果を返しながら iterable の全ての要素に適用するイテレータを返します。
Pythonおすすめ書籍
最初の2冊は初心者向けです。Effectiv Pythonはこの2冊を終えてから読むとかなりわかりやすく感動できると思います。
|
|
|
独学に限界を感じていませんか?
プログラミング初学者がもっとも陥りやすいのは、挫折です。
なぜ?挫折するのでしょうか?
それは独学だけでは、限界があるからです。
でも、あきらめてはそこで終わりです。
プログラミング言語習得には、メンターと呼ばれる教えてくれる人間が必要です。メンターがいれば、挫折する確率がグンと低くなります。
困ったときに、いつでも教えてくれる先生がいれば心強いと思いませんか?
でも、先生って、学校行く時間もないし、、、そんなこと思っていませんか?
今は、Webでプログラミングが学べる時代なんですよ!
でも、お高いんでしょ?
うーん。これは考え方なのかもしれないんですが、例えば、こう考えてはどうでしょうか?
スクール代金が1コース20万円として、その後、ITエンジニアに就職したら、平均30万円以上は、稼げるのですぐに元が取れますよね?
この数値は、リクナビなど転職サイトを検索すればすぐ出てくる数値です。
今一時の出し渋りにより、一生の賃金を損することになるか、倍以上手に出来るかは、自明ですよね?
でも、どこが良いのかわからない。
そこで、厳選したプログラミングスクールと動画サイトをご紹介いたします。
- TechAcademy [テックアカデミー]※スクールの数が多い!返金制度あり!
- 【WebCampPRO】※WEB系に特化したスクール!返金制度あり!
- 【CodeCamp】※無料体験レッスンを受講すると受講料が1万円OFF!
- Python 3 入門+アメリカのシリコンバレー流コードスタイル
- 【Web開発初心者向け!】Web開発入門完全攻略 充実の18時間コース※動画で学びたい人はこちら!格安もあり!
- フロントエンドエンジニアになりたい人の Webプログラミング入門