1
>>> dataset
[[1, 3, 4], [2, 3, 5], [1, 2, 3, 5], [2, 5]]
>>> D=map(set,dataset)
>>> D
<map object at 0x0000000002ABF5F8>

D を python3.3 のインタラクティブ ウィンドウに入力すると、次のように表示されるはずでした。

[set([1, 3, 4]), set([2, 3, 5]), set([1, 2, 3, 5]), set([2, 5])]

なぜ地図オブジェクト?

4

2 に答える 2

2

map の結果がオブジェクトになるのはなぜですか? python 3.3のドキュメントでは結果が得られると書かれているため、ジェネレーターです。

を使えば読める

for i in D:
  print i

またはGrijeshによって提案されたように

list(D)それをリストに変換します

于 2013-10-27T09:14:59.203 に答える
2

Python 3 では、 map はリストを返さず、マップ オブジェクト (反復子) を返します。これについても同様の質問があります。リストが必要な場合は、簡単にリストに変換できます。

D = list(map(set,dataset))

これについてはドキュメントを参照してください。

ちなみに、変数名には小文字を使用することをお勧めします。お役に立てれば!

于 2013-10-27T09:19:53.760 に答える