Python辞書| fromkeys()メソッド

| |

与えられたキーから辞書を作成することが必要になる場合があります。これを大まかに行うには時間がかかり、面倒な作業になります。したがって、fromkeys()は、1つの方法だけを使用してこの問題を簡単に解決するのに役立ちます。この記事では、この機能に関連する運用面とその他の側面について説明します。

構文: fromkeys(seq、val)

パラメーター:
seq: 辞書に変換されるシーケンス。
val:生成されたキーに割り当てる必要のある初期値...デフォルトはNoneです。

戻り値:値が指定されていない場合はNoneにマップされ、それ以外の場合はフィールドに指定された値にキーがマップされたディクショナリ。

コード#1: fromkeysのデモンストレーション()

#Python3デモコード
#キーの操作()


#初期化シーケンス

seq = { ’a’ ’b’ ’c’ ’d’ ’e’ }


#fromkeys()を使用してシーケンスをdictに変換
#なしを使用して初期化

res_dict = dict 。 fromkeys(seq)


#作成されたdictを印刷

print "None値で新しく作成されたdict:" + str (res_dict))


#fromkeys()を使用してシーケンスをdictに変換
#1で初期化

res_dict 2 = dict 。 Fromkeys(seq、 1


#作成されたdictを印刷

印刷 "値として1を使用して新しく作成されたdict:" + str (res_dict2))

終了:

値がNoneの新しく作成されたdict:{’d’:なし、’a’:なし、’b’:なし、’c’:なし、’e’:なし}
値として1を使用して新しく作成されたdict:{’d’:1、’a’:1、’b’:1、’c’:1、’e’:1} < / blockquote>

可変オブジェクトを値として使用するfromdict()の動作:

fromdict()関数は、多重化可能なオブジェクトをデフォルト値として指定することもできます。ただし、この場合、ディクショナリからディープコピーが作成されます。つまり、元のリストに値を追加すると、すべてのキー値で追加が行われます。

防止策:特定の辞書理解手法を使用して、元のリストをキー値として指さない新しいリストをキー値として作成できます。

コード#2:可変オブジェクトを使用した動作を示します。

< td class = "code">

#Python3デモコード
#可変オブジェクトでの動作


#シーケンスとリストの初期化

seq = { ’a’ ’b’ ’c’ ’d’ ’e’ }

lis1 = [ 2 3 ]


#fromkeys()を使用してシーケンスをdictに変換
#通常のメソッドを使用

res_dict = dict 。 fromkeys(seq、lis1)


#作成されたdictを印刷

print "リスト値を使用して新しく作成されたdict: "

+ str (res_dict))

< br /> #lis1に追加

lis1.append( 4


#追加後にdiktatを印刷する
#すべての値で追加が行われることに注意してください

print "追加後のリスト値を含むdict:"

+ str (res_dict))

lis1 = [ 2 3 ]

print ’’


#fromkeys()を使用してシーケンスをdictに変換
#dictを使用します。理解する

res_dict2 = {key: list (lis1) for キー in seq}


#作成されたdictを印刷

print "リスト値を使用して新しく作成されたdict: "

+ str (res_dict2))


#lis1に追加

lis1.append( 4

#追加後にdiktatを出力します
#現在は追加されていないことに注意してください。

print "リスト付きの辞書追加後の値(変更なし): "

+ str (res_dict2))

出力:

リスト値を使用して新しく作成されたdict:{’d’:[2、3]、’e’:[2、3]、’c’: [2、3]、’a’:[2、3]、’b’:[2、3]}
追加後のリスト値を含むdict:{’d’:[2、3、 4]、’e’:[2、3、4]、’c’:[2、3、4]、’a’:[2、3、4]、’b’:[2、3、4] }

リスト値を使用して新しく作成されたdict:{’d’:[2、3]、’e’:[2、3]、’c’:[2、3]、’a’ :[2、3]、’b’:[2、3]}
追加後のリスト値を含むdict(変更なし):{’d’:[2、3]、’e’: [2、3]、’c’:[2、3]、’a’:[2、3]、’b’:[2、3]}

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method