ホームページ バックエンド開発 Python チュートリアル Python での辞書インスタンスの作成と使用の詳細な説明

Python での辞書インスタンスの作成と使用の詳細な説明

Jun 16, 2016 am 08:46 AM

辞書は、Python に組み込まれている唯一のマッピング タイプです。ディクショナリ内の値は特別な順序ではありませんが、特定のキーの下に保存されます。
キーには、数値、文字列、さらにはタプルを使用できます。
1. 辞書の作成と使用
辞書は次の方法で作成できます:

コードをコピー コードは次のとおりです:

phonebook = {'Alice':'2341','Beth':'9102','Ceil':'3258'}

辞書は複数のキーで構成されており、それらの対応する値のペアの構成。各キーとその値はコロン (:) で区切られ、項目はカンマ (,) で区切られ、辞書全体は 1 対の中括弧で囲まれます。空の辞書: {}

1.1 dict 関数
dict 関数を使用すると、マッピング (他の辞書など) または (キー、値) などのシーケンスを通じて辞書を作成できます。
コードをコピー コードは次のとおりです:

>>> items = [('name','ガンビー') ,('年齢'.42)]
>>> d = dict(items)
>>> d
{'年齢':42,'名前' :'ガンビー '}
>>> d = dict(name='ガンビー','年齢'=42)
>>> d
{'年齢':42, 'name' :'Gumby'}

1.2 基本的な辞書操作
(1)len(d) は d 内の項目 (キーと値のペア) の数を返します;
(2 )d[k] k に関連付けられた値を返します。
(3) d[k]=v は値 v をキー k に関連付けます。(4) del d[k] はキー k を持つ項目を削除します。 ;
(5) k in d は、d にキー k を持つ項目があるかどうかを確認します

1.3 辞書形式文字列
各変換指定子の後には、次のことができます。キー (括弧内) を追加し、その後に他の説明要素を追加します。
指定されたすべてのキーが辞書内で見つかる限り、変換指定子はいくつでも取得できます。

コードをコピーします コードは次のとおりです:
>>> ケーキの値段は $ です。 %(cake )s、ケーキのミルクの価格は $%(milk)s です。$%(cake)s はOKです'
>>> 価格 = {'cake':4,'milk' :5}
>>>print Temple % 価格
「ケーキの値段は 4 ドル、ケーキのミルクの値段は 5 ドルで大丈夫です」

1.4 Dictionary メソッド
1.4.1 clear
clear メソッドは、ディクショナリ内のすべての項目をクリアします。これはインプレース操作であり、戻り値はありません (または何も返しません)。
次の 2 つの状況を考えてみましょう:
a. 新しい空の辞書に関連付けて x をクリアします。これは、y にはまだ元の辞書に関連付けられています。

コードをコピー コードは次のとおりです:>>> x = {}
>>> 🎜>>>> x['key'] = 'value'
>>> y
{'key':'value'}
>>> 🎜>>>> y
{'key':'value'}


b. 元の辞書内のすべての要素をクリアする場合は、clear メソッドを使用する必要があります。 。


コードをコピー
コードは次のとおりです。>>> x = {}> >&gt ; y = x>>> x['キー'] = '値'
>>> y
{'キー':'値'}
> >> 新しい辞書 (値自体はコピーではなく同じであるため、このメソッドは浅いコピーを実装します)
コピー内の値を置き換える場合、元の辞書は影響を受けません。値が変更されると、元の辞書が変更されます。 ]



コードをコピー

コードは次のとおりです:

>>> x = {'a':1 ,'b ':[2,3,4]}
>>> y = x.copy()
>>> y['a'] = 5
> ;> y['b'].remove(3)>>> {'a':5,'b':[2,4]} ;> > 値。
コードをコピー

コードは次のとおりです。


>>> x = {'a':1, 'b' :[2,3,4]}
>>> y = x.copy()
>>> z = x.deepcopy()
>> ;> x['a'].append(5)
>>> {'a':1,5,'b':[2,3.4]}> ;> > z
{'a':1,'b':[2,3,4]}
1.4.3 fromkeysfromkeys メソッドは指定されたキーを使用します新しい辞書を作成するには、各キーに対応するデフォルト値は None です。このメソッドは、すべての辞書の型 dict に対して直接呼び出すことができます。デフォルト値を使用したくない場合は、独自の値を指定することもできます。
コードをコピー

コードは次のとおりです:

>>> {}.fromkeys(['名前','年齢'])
{'年齢':なし,'名前':なし}
>> >
>>> dict.fromkeys(['名前','年齢'],'不明')
{'年齢':'不明','名前':'不明'}

1.4.4 get
get メソッドは、辞書項目にアクセスするためのよりリラックスした方法です。 get を使用して存在しないキーにアクセスすると、None 値が返されます。 「デフォルト」値をカスタマイズして、None を置き換えることもできます。
コードをコピー コードは次のとおりです。

>>> d = {}
> >&gt ; print d.get('name')
なし
>>> d.get("name",'N/A')
'N/A'
> >> d[''名前] = 'エリック'
>>>d.get('名前')

1.4 .5 has_key
has_key メソッドは、辞書に指定されたキーが含まれているかどうかを確認できます。 d.has_key(k)

コードをコピー コードは次のとおりです。
>>> }
>>> d.has_key('name')
False

1.4.6 items および iteritems
items メソッドは、すべての辞書項目をリストとして返します。ただし、リスト内の各項目 (キー、値) は、特定の順序で返されません。 iteritems メソッドはほぼ同じことを行いますが、リストの代わりに反復子オブジェクトを返します:

コードをコピー コードは次のとおりです:
>>> d = {'a':1,'b':2,'c':3}
>>>d.items
[('a ',1) ,('b',2),('c',3)]
>>> it = d.iteritems()
>>> <dictionary- iteritems オブジェクト at 169050>
>>> list(it)
[('a',1),('b',2),('c',3)]


1.4.7 key と iterkeys Keys メソッドは辞書内のキーをリストとして返しますが、iterkeys はキーの反復子を返します。
1.4.8 Pop メソッド
pop メソッドは、指定されたキーに対応する値を取得し、辞書からキーと値のペアを削除するために使用されます。



コードをコピー
コードは次のとおりです。>>> d = {'a':1, 'b' :2,'c':3}>>> d.pop('a')
>>>d
{'b':2,' c': 3}


1.4.10 setdefault
setdefault メソッドは、get メソッドとある程度似ています。つまり、指定されたキーに関連付けられた値を取得でき、次のことができます。辞書内の指定されたキーに関連付けられた値も取得します。固定キーの場合は、対応するキーの値を設定します。


コードをコピー
コードは次のとおりです。>>> d = {}> >&gt ; d.setdefault('name','N/A')
'N/A'
>>> d
{'name': 'N/A'}
>>> d.setdefault('name',A)
'N/A'


上記の例のように、キーが存在する場合、デフォルト値(オプション) が返され、対応するディクショナリが更新され、キーが存在する場合は対応する値が返されますが、ディクショナリは変更されません。
1.4.11 update
update メソッドは、1 つの辞書項目を使用して別の辞書を更新できます。提供された辞書エントリは古い辞書に追加されるか、同じキーを持つ場合は上書きされます。



コードをコピー
コードは次のとおりです。>>> d = {'a':1, 'b' :2,'c':3}>>> x = {'a':5,'d':6}
>>> )
>>> d
{'a': 5, 'c': 3, 'b': 2, 'd': 6}


1.4。 12 個の値と itervalues
values メソッドは、ディクショナリ内の値をリストの形式で返します (itervalues は、キーのリストを返すのとは異なり、値のリストを返します)。繰り返しの要素を含めることができます。


コードをコピー
コードは次のとおりです。>>> d = {}> >> d[1]=1
>d[2]=2
>>d[3]=3
>>d [4] =1
>>d
{1: 1, 2: 2, 3: 3, 4: 1}
>>>d.values()
[1、2、3、1]


このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Pythonを使用してテキストファイルのZIPF配布を見つける方法 Pythonを使用してテキストファイルのZIPF配布を見つける方法 Mar 05, 2025 am 09:58 AM

Pythonを使用してテキストファイルのZIPF配布を見つける方法

HTMLを解析するために美しいスープを使用するにはどうすればよいですか? HTMLを解析するために美しいスープを使用するにはどうすればよいですか? Mar 10, 2025 pm 06:54 PM

HTMLを解析するために美しいスープを使用するにはどうすればよいですか?

Pythonでの画像フィルタリング Pythonでの画像フィルタリング Mar 03, 2025 am 09:44 AM

Pythonでの画像フィルタリング

TensorflowまたはPytorchで深い学習を実行する方法は? TensorflowまたはPytorchで深い学習を実行する方法は? Mar 10, 2025 pm 06:52 PM

TensorflowまたはPytorchで深い学習を実行する方法は?

Pythonの並列および同時プログラミングの紹介 Pythonの並列および同時プログラミングの紹介 Mar 03, 2025 am 10:32 AM

Pythonの並列および同時プログラミングの紹介

Pythonオブジェクトのシリアル化と脱介入:パート1 Pythonオブジェクトのシリアル化と脱介入:パート1 Mar 08, 2025 am 09:39 AM

Pythonオブジェクトのシリアル化と脱介入:パート1

Pythonの数学モジュール:統計 Pythonの数学モジュール:統計 Mar 09, 2025 am 11:40 AM

Pythonの数学モジュール:統計

Pythonで独自のデータ構造を実装する方法 Pythonで独自のデータ構造を実装する方法 Mar 03, 2025 am 09:28 AM

Pythonで独自のデータ構造を実装する方法

See all articles