Python -itertools-
- 2017年09月11日
- CATEGORY- 1. 技術力{技術情報}
Pythonでループ処理を書く場合、for文をネストしなくても「itertools」を使うと
簡潔に処理を書くことができます。
■itertools
https://docs.python.jp/3/library/itertools.html
まず、「itertools」をimportします。
■itertoolsのインポート
import itertools
itertoolsを使わず、for文をネストした場合は下記のようになります。
>>> for x in range(2): ... for y in range(5): ... print(x, y) ... 0 0 0 1 0 2 0 3 0 4 1 0 1 1 1 2 1 3 1 4
これをitertoolsを使うと下記のようになります。
>>> for x, y in itertools.product(range(2), range(5)): ... print(x, y) ... 0 0 0 1 0 2 0 3 0 4 1 0 1 1 1 2 1 3 1 4
2重ループですとあまりメリットがないように思えますが、
3重、4重となると便利さを感じられると思いますし、
高速でメモリ効率に優れているので、普通にfor文を書くより良いと思います。
【関連記事】
3分で構築するRuby on Rails開発環境
続・3分で構築するRuby on Rails開発環境~MySQL設定編~
フラットデザインとレスポンシブデザイン
「Cloudera World Tokyo 2014」に行ってきました
Code Avengers(コードアベンジャーズ)
paizaでスキルチェック ~オンラインハッカソンに挑戦~
そしてスーパープログラマーへ
Hackmeに挑戦!
Railsで作るAPI
Ruby on Rails -turnout-
Ruby on Rails -migration-
Windows 10にアップグレードしてみました
Windows 神モード
Ruby on rails -slim-
WindowsでVimを使う(1)
「Cloudera World Tokyo 2015」に行ってきました
Ruby on Rails -gitignore.io-
Windowsでパッケージ管理
プログラミング言語を武器に例えると
Vagrantで開発環境構築
ワンライナーでWebサーバ起動
Vim like in Chrome
mailcatcher – インストール編
mailcatcher – 設定編
mailcatcher – API編
tigを使ってみました
NodeSchoolに入学
Vim Bootstrapを使ってみる
ギットクエストやってみました
VIM Adventures -LEVEL 1-
VIM Adventures -LEVEL 2-
VIM Adventures -LEVEL 3-
Python -インストール編
Python -パッケージ管理
Python -dateutils-
- 2017年09月11日
- CATEGORY- 1. 技術力{技術情報}