1

辞書内のいくつかのリスト項目を削除する

こんにちは、私は辞書を持っています:

phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400}

「電話」辞書から 12 と 5 を削除したいとします。「del」関数を使用してそれを行う方法はありますか?

.remove() を使用して、これを行う方法を知っています

phone["third"].remove(12)
phone["third"].remove(5)

しかし、del() を使用してそれを行うことが可能かどうか疑問に思っていましたか? ありがとうございました。

編集:「デルはインデックスを使用し、削除は正確な値を使用します」に集中するすべての返信について、質問を再定義しています:

「電話」辞書の 3 番目のキー値項目を表すリストのインデックス 1 と 2 を削除したいと考えています。どうやってやるの?

4

5 に答える 5

3

値ではなくインデックスでこれを行う必要があります。

>>> phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400}
>>> del(phone["third"][1:3])
>>> phone
{'second': 200, 'fourth': 400, 'third': [10, 38], 'first': 100}

これにより、リスト内の位置 1 と 2 の要素が削除されます。

于 2013-05-04T16:34:05.063 に答える
0

電話辞書の値にアクセスし、リストのアイテムを削除します。

他の答え - 変更したいデータを含む項目 (キー、値) を取得してみてください。辞書から削除します。このアイテムの値 (リスト) を変更します。そしてそれを辞書に追加します

于 2013-05-04T16:33:38.140 に答える
0

phone["second"] は、評価対象であるため、リストとして扱うことができます。たとえば、削除したいアイテムのインデックスがわかっている場合は、次のようにします。

phone["third"][1:3]=[]

また

del phone["third"][1:3]
于 2013-05-04T16:36:03.070 に答える
-1

http://docs.python.org/2/tutorial/datastructures.html#the-del-statement del は、値ではなくインデックスで削除する方法ですが、必要に応じて最初にインデックスを検索できます。値で削除する場合は、remove を使用することをお勧めします。

インデックス 1 と 2 の要素を削除するには

>>> phone = {"first":100,"second":200,"third":[10,12,5,38],"fourth":400}
>>> del phone["third"][1]
>>> del phone["third"][2]
>>> phone
{'second': 200, 'fourth': 400, 'third': [10, 5], 'first': 100}
于 2013-05-04T16:33:00.633 に答える