0

リストのインデックスが存在するかどうかを確認する解決策はありますか?

以外:

  1. 使用してlen(list)

  2. 使用して

    try:
       ...
    except IndexError:
       ...
    

dict にはdict.has_key(key)キーが存在するかどうかを確認する機能があるため、リストのインデックスを確認する方法はありますか?

4

2 に答える 2

3

いいえ、インデックスが存在するかどうかをテストする追加の方法はありません。

辞書のキーは簡単には予測できません。すべてのキーをスキャンするのは非効率的であるため、キーが効率的に存在するかどうかを判断するには、メンバーシップ テストが必要です

リストにはその問題はありません。len(somelist)は安価です (長さはリスト オブジェクトにキャッシュされます)。したがって、インデックスindex < len(somelist)が存在するかどうかをテストする方法です。ほとんどの場合、インデックスがリストの境界内にあると予想される場合は、例外を処理して優れたフォールバックを行います。

于 2013-10-24T12:22:46.947 に答える