0

Pythonコードの一部が表示されます

/*Constructor*/
self.matrix={}

/*my funciton*/
if(self.matrix.get((packet.src,packet.dst))==None):

Python配列はNoneに初期化されますか? none は何を表していますか? 上記の比較は正しいですか?私は Python の初心者で、C++ の概念に関連付けようとしています。

4

3 に答える 3

2

self.matrixは配列ではなく、dict. std::mapこれは、C++の a に相当します。あなたの使用法から、それはのようなものstd::map<std::pair<srcType, dstType>, valueType>です。( s は、キーと値の両方でバリアント型を保持できることに注意してください。キーとして常に 2 要素のdicta を使用すると仮定しているだけです。)tuple

いいえ、にself.matrix初期化されていませんNone。一致が見つからない場合dict.get() は戻ります。 None代わりに、一致が見つからない場合は例外を[]スローします。KeyError

于 2013-05-02T02:20:55.743 に答える