[解決済み] フィルタを呼び出すと、<filter object at ...>が返されます。> [重複] を返す。
2022-08-21 10:06:16
質問
Pythonでfilterの概念を学んでいます。このような簡単なコードを実行しています。
>>> def f(x): return x % 2 != 0 and x % 3 != 0
>>> filter(f, range(2, 25))
しかし、リストを得る代わりに、私はこのようないくつかのメッセージを取得しています。
<filter object at 0x00FDC550>
これは何を意味するのでしょうか?私のフィルタリングされたオブジェクト、つまり出てくるリストがそのメモリ位置に格納されているということでしょうか?どのようにすれば、必要なリストを取得できるのでしょうか?
どのように解決するのですか?
python3.xを使用しているようですが、python3では。
filter
,
map
,
zip
などは反復可能なオブジェクトを返すが、リストにはならない。 言い換えれば
filter(func,data) #python 2.x
とは等価である。
list(filter(func,data)) #python 3.x
イテレータが反復中にリストと同じものを返す限り、前もってリストを作成するためにすべてのメモリを消費する必要はないのです。
リスト内包とジェネレータ式に慣れていれば、上記のフィルタはpython3.xでは以下のものと(ほぼ)等価です。
( x for x in data if func(x) )
とは対照的です。
[ x for x in data if func(x) ]
python 2.xで
関連
-
[解決済み] モジュールの関数名(文字列)を使って、モジュールの関数を呼び出す。
-
[解決済み] Pythonでオブジェクトが属性を持つかどうかを知る方法
-
[解決済み] オブジェクトの種類を決定しますか?
-
[解決済み] オブジェクト名の前のシングルアンダーコアとダブルアンダーコアの意味は何ですか?
-
[解決済み] Pythonのクラスはなぜオブジェクトを継承するのですか?
-
[解決済み] List<T>をオブジェクトのプロパティでソートする方法
-
[解決済み] Pythonでnullオブジェクトを参照する
-
[解決済み] リスト内包とラムダ+フィルタの比較
-
[解決済み] Javaコレクションをフィルタリングする方法(述語に基づく)?
-
[解決済み] ValueError: cannot reindex from a duplicate axis`とはどういう意味ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Python 3でfilter, map, reduceを使うには?
-
[解決済み] PythonでのAWS Lambdaのインポートモジュールエラー
-
[解決済み] PythonでファイルのMD5チェックサムを計算するには?重複
-
[解決済み] googletransがエラー 'NoneType' オブジェクトに 'group' 属性がない、と言って動かなくなった。
-
[解決済み] なぜ(0-6)は-6=偽なのか?重複
-
[解決済み] 値で列挙名を取得する [重複]。
-
[解決済み] Cythonのコードを含むPythonパッケージはどのように構成すればよいのでしょうか?
-
[解決済み] Pandasを使って、既存のExcelファイルに新しいシートを保存する方法は?
-
[解決済み] Flaskで非同期タスクを作る
-
[解決済み] Pythonの検索パスを他のソースに展開する