Python-習題40:辞書、かわいい辞書
4511 ワード
次に、このような容器をマスターすると、超クールな能力を持つことになるので、頭を悩ませるもう一つの容器型データ構造を教えてあげます.これは最も役に立つ容器です:辞書(dictionary).
Pythonはこのデータ型を「dict」と呼び、ある言語では「hash」と呼ばれている.この2つの名前は私が使いますが、これは重要ではありません.重要なのはリストとの違いです.リストに対してこのようなことをすることができます
リストのインデックスとして数値を使用できます.つまり、リストの要素を数値で見つけることができます.そして
dict
数字だけでなく、何でも要素を見つけることができます.はい、辞書は1つのものと別のものを関連付けることができます.そのタイプが何であれ、見てみましょう.
数字のほかに文字列で辞書から取得することもできます
stuff
を選択すると、文字列で辞書に要素を追加することもできます.もちろん文字列だけでなく、このようなこともできます.
ここでは2つの数字を使いました.実は私は何でも使えますが、そう言うのは正確ではありませんが、先にそう理解すればいいです.
もちろん、物を入れるしかない辞書は面白くありません.だから、delというキーワードを使う方法もあります.
次に私たちは練習をしなければなりません.あなたは非常に注意しなければなりません.私はあなたにこの練習を書いて、それから何をしたのか理解してみてください.この練習はとてもおもしろくて、終わったらあなたはおおらかな感じがするかもしれません.
加点練習問題. Pythonドキュメントでdictionary(dicts,dictとも呼ばれる)に関する内容を見つけ、dictに対してより多くの操作を学ぶ. dictではできないことを見つけます.例えば重要なのはdictの内容が無秩序であることです.本当にそうかどうかをチェックしてみてください. for-loopをdictに実行してみて、for-loopでdictのitems()関数を使って、どのような結果が出るか見てみましょう.
辞書の要素を削除します.
辞書キーの機能:
1)同じキーが2回出現することは許されない.作成時に同じキーが2回割り当てられた場合、次の例のように次の値が記憶されます.
2)キーは可変でなければならないので、数字、文字列、またはメタグループで機能し、リストでは機能しません.
ディクショナリの組み込み関数とメソッド:
1.len(dict):辞書要素の個数、すなわちキーの総数を計算する
2.str(dict):印刷可能な文字列で辞書を出力する
3.type(variable):入力した変数タイプを返し、変数タイプが辞書であれば辞書タイプを返します.
python辞書には、次の組み込み方法が含まれています.
1.radiansdict.clear():辞書内のすべての要素を削除
2.radiansdict.copy():辞書の浅いコピーを返します.
3.radiansdict.fromkeys():新しい辞書を作成し、シーケンスseqの要素で辞書のキーを作成します.valは辞書のすべてのキーに対応する初期値です.
4.radiansdict.get(key,default=None):指定したキーの値を返します.値が辞書でdefault値を返さない場合は
5.key in dict:キーが辞書dictでtrueを返す場合、falseを返します.
6.radiansdict.items():遍歴可能な(キー、値)メタグループ配列をリストで返す
7.radiansdict.keys():辞書のすべてのキーをリストで返します.
8.radiansdict.setdefault(key,default=None):get()と似ていますが、キーが辞書に存在しない場合はキーが追加され、値がdefaultに設定されます.
9.radiansdict.update(dict 2):辞書dict 2のキー/値ペアをdictに更新
10.radiansdict.values():辞書のすべての値をリストで返します.
11.pop(key[,default]):辞書で指定されたキーキーに対応する値を削除し、削除された値を返します.key値は指定する必要があります.そうでない場合はdefault値を返します.
12.popitem():辞書のキーと値のペアをランダムに返して削除します(一般的に末尾のペアを削除します).
Pythonはこのデータ型を「dict」と呼び、ある言語では「hash」と呼ばれている.この2つの名前は私が使いますが、これは重要ではありません.重要なのはリストとの違いです.リストに対してこのようなことをすることができます
>>> things = ['a','b','c','d']
>>> print(things[1])
b
>>> things[1] = 'z'
>>> print(things[1])
z
>>> print(things)
['a', 'z', 'c', 'd']
>>>
リストのインデックスとして数値を使用できます.つまり、リストの要素を数値で見つけることができます.そして
dict
数字だけでなく、何でも要素を見つけることができます.はい、辞書は1つのものと別のものを関連付けることができます.そのタイプが何であれ、見てみましょう.
>>> stuff = {'name':'Zed','age':36,'height':6*12+2}
>>> print(stuff['name'])
Zed
>>> print(stuff['age'])
36
>>> print(stuff['height'])
74
>>> stuff['city'] = "San Francisco"
>>> print(stuff['city'])
San Francisco
>>>
数字のほかに文字列で辞書から取得することもできます
stuff
を選択すると、文字列で辞書に要素を追加することもできます.もちろん文字列だけでなく、このようなこともできます.
>>> stuff[1] = "Wow"
>>> stuff[2] = "Neato"
>>> print(stuff[1])
Wow
>>> print(stuff[2])
Neato
>>> print(stuff)
{'name': 'Zed', 'age': 36, 'height': 74, 'city': 'San Francisco', 1: 'Wow', 2: 'Neato'}
>>>
ここでは2つの数字を使いました.実は私は何でも使えますが、そう言うのは正確ではありませんが、先にそう理解すればいいです.
もちろん、物を入れるしかない辞書は面白くありません.だから、delというキーワードを使う方法もあります.
>>> del stuff['city']
>>> del stuff[1]
>>> del stuff[2]
>>> stuff
{'name': 'Zed', 'age': 36, 'height': 74}
>>>
次に私たちは練習をしなければなりません.あなたは非常に注意しなければなりません.私はあなたにこの練習を書いて、それから何をしたのか理解してみてください.この練習はとてもおもしろくて、終わったらあなたはおおらかな感じがするかもしれません.
cities = {'CA':'San Francisco','MI':'Detroit','FL':'Jacksonville'}
cities['NY'] = 'New York'
cities['OR'] = 'Portland'
def find_city(themap,state):
if state in themap:
return themap[state]
else:
return "Not found."
# ok pay attention!
cities['_find'] = find_city
while True:
state = input("State?(ENTER to quit)> ")
if not state:break
# this line is the most important ever! study!
city_found = cities['_find'](cities,state)
print(city_found)
加点練習問題.
辞書の要素を削除します.
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
del dict['Name'] # 'Name'
dict.clear() #
del dict #
print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])
辞書キーの機能:
1)同じキーが2回出現することは許されない.作成時に同じキーが2回割り当てられた場合、次の例のように次の値が記憶されます.
dict = {'name':'Mahua','Age':8,'name':'Tudou'}
print("dict['name']: ",dict["name"])
# :
dict['name']: Tudou
2)キーは可変でなければならないので、数字、文字列、またはメタグループで機能し、リストでは機能しません.
ディクショナリの組み込み関数とメソッド:
1.len(dict):辞書要素の個数、すなわちキーの総数を計算する
2.str(dict):印刷可能な文字列で辞書を出力する
3.type(variable):入力した変数タイプを返し、変数タイプが辞書であれば辞書タイプを返します.
python辞書には、次の組み込み方法が含まれています.
1.radiansdict.clear():辞書内のすべての要素を削除
2.radiansdict.copy():辞書の浅いコピーを返します.
3.radiansdict.fromkeys():新しい辞書を作成し、シーケンスseqの要素で辞書のキーを作成します.valは辞書のすべてのキーに対応する初期値です.
4.radiansdict.get(key,default=None):指定したキーの値を返します.値が辞書でdefault値を返さない場合は
5.key in dict:キーが辞書dictでtrueを返す場合、falseを返します.
6.radiansdict.items():遍歴可能な(キー、値)メタグループ配列をリストで返す
7.radiansdict.keys():辞書のすべてのキーをリストで返します.
8.radiansdict.setdefault(key,default=None):get()と似ていますが、キーが辞書に存在しない場合はキーが追加され、値がdefaultに設定されます.
9.radiansdict.update(dict 2):辞書dict 2のキー/値ペアをdictに更新
10.radiansdict.values():辞書のすべての値をリストで返します.
11.pop(key[,default]):辞書で指定されたキーキーに対応する値を削除し、削除された値を返します.key値は指定する必要があります.そうでない場合はdefault値を返します.
12.popitem():辞書のキーと値のペアをランダムに返して削除します(一般的に末尾のペアを削除します).