0

Python の組み込みヒープ機能のいくつかを理解しようとしています。タプルのリストを渡すと、気に入らないようです (または、リストを正しく渡していない可能性が高い)。ここに私が持っているものがあります:

myList = ( ('a', 1), ('b', 2) )
heapify(myList)

私が得るエラーは

TypeError: ヒープ引数はリストでなければなりません

私は何か間違ったことをしていますか?タプルのリストを渡す別の方法はありますか?

ありがとう!

4

2 に答える 2

8

問題はそれmyListがタプルであることです。これを試して:

myList = [('a', 1), ('b', 2)]
heapify(myList)
于 2012-10-23T19:47:11.297 に答える
2

上記のように、heapify はリスト (myList) をヒープに変換します。したがって、heapify を使用する場合は、最初にすべてをリストに変換する必要があります。

http://docs.python.org/library/heapq.html <--- heapq についてもう少し詳しく説明します

于 2012-10-23T19:55:25.560 に答える