亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

辭書

前回の研究により、リストとタプルを使用して順序付きセットを表現(xiàn)できることがわかりました。前の例では、リストを使用してユーザーのニックネームを保存しました

user=['liangdianshui','twowater','兩點(diǎn)水']

ユーザーのニックネームも保存する必要がある場(chǎng)合口座番號(hào)を記録しますか?

リストを使用すると、次のように解決できます:

user=[['liangdianshui','111111'],['twowater','222222'],['兩點(diǎn)水','333333']]

しかし、この方法で表現(xiàn)するのは不便であり、ニックネームに基づいて対応するニックネームを見(jiàn)つけるのは難しく、時(shí)間が長(zhǎng)くなるほど、リストを作成するほど時(shí)間がかかりますが、この時(shí)は dict (辭書) で表現(xiàn)できます Python には辭書 (dict) が組み込まれています dict の正式名は Dictionary で、JAVA のマップに相當(dāng)します。キーと値 (キーと値) ストレージを使用し、検索速度が非常に高速です。

user={'liangdianshui':'111111' ,'twowater':'222222' ,'兩點(diǎn)水':'333333'}

1. dict (辭書) の作成

Dictionary も変數(shù)コンテナ モデルであり、あらゆる種類のオブジェクトを格納できます。

ディクショナリ內(nèi)の各キーと値 (key=>value) ペアはコロン (:) で區(qū)切られ、各ペアはコンマ (,) で區(qū)切られ、ディクショナリ全體が中括弧で囲まれます。 ({}) の形式は次のとおりです。

dict = {key1 : value1, key2 : value2 }

注: キーは一意である必要がありますが、値は一意である必要はありません。値は任意のデータ型にすることができますが、キーは不変である必要があります。

dict (辭書) インスタンスの作成:

dict1={'liangdianshui':'111111' ,'twowater':'222222' ,'兩點(diǎn)水':'333333'}
dict2={'abc':1234,1234:'abc'}

2. dict (辭書) にアクセス

#-*-coding:utf-8-*-
dict1={'liangdianshui':'111111' ,'twowater':'222222' ,'兩點(diǎn)水':'333333'}
print(dict1)

出力結(jié)果:

{'liangdianshui': '111111', 'twowater': '222222', '兩點(diǎn)水': '333333'}

ここで注意すべき點(diǎn)は、このキーが辭書に存在しない場(chǎng)合、エラーが報(bào)告されるということです。

3. dict (辭書) の変更

新しいコンテンツを辭書に追加する方法は、新しいキー/値のペアを追加するか、既存のキー/値を変更または削除することです。ペア

#-*-coding:utf-8-*-
dict1={'liangdianshui':'111111' ,'twowater':'222222' ,'兩點(diǎn)水':'333333'}
print(dict1)
# 新增一個(gè)鍵值對(duì)
dict1['jack']='444444'
print(dict1)
# 修改鍵值對(duì)
dict1['liangdianshui']='555555'
print(dict1)

出力結(jié)果:

{'liangdianshui': '111111', 'twowater': '222222', '兩點(diǎn)水': '333333'}
{'liangdianshui': '111111', 'twowater': '222222', '兩點(diǎn)水': '333333', 'jack': '444444'}
{'liangdianshui': '555555', 'twowater': '222222', '兩點(diǎn)水': '333333', 'jack': '444444'}

4. dict (dictionary) の削除

del を使用して、dict (dictionary) 內(nèi)の要素を削除できます。 dict (dictionary) も削除できます。

clear() メソッドを呼び出すことで、辭書內(nèi)のすべての要素をクリアできます。

#-*-coding:utf-8-*-
dict1={'liangdianshui':'111111' ,'twowater':'222222' ,'兩點(diǎn)水':'333333'}
print(dict1)
# 通過(guò) key 值,刪除對(duì)應(yīng)的元素
del dict1['twowater']
print(dict1)
# 刪除字典中的所有元素
dict1.clear()
print(dict1)
# 刪除字典
del dict1

出力結(jié)果:

{'liangdianshui': '111111', 'twowater': '222222', '兩點(diǎn)水': '333333'}
{'liangdianshui': '111111', '兩點(diǎn)水': '333333'}
{}

5 , dict(辭書)を使うときの注意點(diǎn)

(1) dict(辭書)ではキーを2回作成することはできませんが、dict(辭書)作成時(shí)に表示された場(chǎng)合は、キー値が 2 回割り當(dāng)てられた場(chǎng)合、最後に割り當(dāng)てられた値が優(yōu)先されます。

例:

#-*-coding:utf-8-*-
dict1={'liangdianshui':'111111' ,'twowater':'222222' ,'兩點(diǎn)水':'333333','twowater':'444444'}
print(dict1)
print(dict1['twowater'])

出力結(jié)果:

{'liangdianshui': '111111', 'twowater': '444444', '兩點(diǎn)水': '333333'}
444444

( 2) dict (辭書) キーは不変である必要がありますが、キーは數(shù)値、文字列、またはタプルとして使用できますが、リストは使用できません。

例:

#-*-coding:utf-8-*-
dict1={'liangdianshui':'111111' ,123:'222222' ,(123,'tom'):'333333','twowater':'444444'}
print(dict1)

出力結(jié)果:

{'liangdianshui': '111111', 123: '222222', (123, 'tom'): '333333', 'twowater': '444444'}

(3) dict が內(nèi)部的に格納される順序は、キーが入力される順序とは関係がありません。

list と比較すると、dict は次のようになります。特徴:

検索と挿入の速度は非常に速く、キーが増加しても速度が低下することはありません。

大量のメモリを消費(fèi)し、大量のメモリを浪費(fèi)します。

リストの場(chǎng)合はその逆です。

要素の數(shù)が増えると、検索と挿入にかかる時(shí)間が長(zhǎng)くなります。

##占有スペースもメモリの浪費(fèi)もほとんどありません

#6. dict(辭書)の関數(shù)とメソッド

メソッドと関數(shù)説明
cmp(dict1, dict2)2 つの辭書を比較する 要素
len(dict)辭書要素?cái)?shù)の計(jì)算
str(dict) 辭書の印刷可能な文字列表現(xiàn)を出力します。
type(variable) 入力変數(shù)の型を返します。変數(shù)が辭書の場(chǎng)合は、辭書の型を返します
dict.clear()辭書內(nèi)のすべての要素を削除します
dict.copy()Return辭書 Copy
dict.values()辭書內(nèi)のすべての値をリストとして返す
popitem () 辭書內(nèi)のキーと値のペアをランダムに返して削除します
dict.items()走査可能なものを返します( key、value) リストとしての要素 グループ配列




學(xué)び続ける