Python generators are very useful. They have advantages over functions that return lists. However, you could len(list_returning_function()). Is there a way to len(generator_function())? UPDATE: Of course len(list(generator_function())) would work..... I'm trying to use a generator I've created inside a new generator I'm creating. As part of the calculation in the new generator it needs to know the
「エキスパートPythonプログラミング」の中からピックアップした話題をベースに、python user3人で勉強会(2012/08/31)しました。 その際の資料を元に、勉強会で話した内容を公開しておきます。 テーマ/キーワード iterator、generator、generator式 以下は、話の流れで少し触れた程度 関数オブジェクト - 有名 - 無名 closure 本日の概要 今日は、ジェネレータの話をします。 ジェネレータとは、「一旦何らかの値を戻して、しばらく後にその時点から処理を再開する」ことが出来る関数です。時間を置いて値をいくつも生成(generate)するところからそう呼ばれています。 ジェネレータは反復処理に使われるため、必ず「イテレータプロトコル」に対応します。 まず、イテレータのおさらいからします。 イテレータ イテレータとは、単に"イテレータプロトコル"を実
プログラミングと暇つぶし Python リストを見ていたら、「pythonにてstrの数字とintの数字を取り込んで全部int化されたリストを作りたい。けど、エラーがでてうまくいかない」って書いてあるところでなんか引っかかった。ブログで言及されているTypeError: 'int' object is not iterableは今まで見たことがないエラー。リスト関数list()ってよくよく考えるとイテレーターなものしか飲み込まないんですね。知らんかった。 で、こういう時ってmapなのかなぁっと思って書いた。*1 >>> [1, 2]+list(map(lambda x:int(x),list("34"))) [1, 2, 3, 4] うーん、可読性悪いな。 補足 どういったものがイテレータで、どういったものが違うのか具体例を三つほど挙げます。数字やクラスはどうもダメみたいです。文字はイテレ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く