《課題1》定義域の限定

《課題1》定義域の限定:指定したシーケンスと同じ「キー」を持つ、新たな辞書が得られるように、次の関数を定義してください。

>>> ex
{'A': 1, 'C': 3, 'B': 2}
>>> domTo(ex, "ABD")
{'A': 1, 'B': 2}

指定した文字列 "ABD" の各要素と同じキーを持つ、新たな辞書が得られます。同じキー 'D' が存在しないなら、それを無視します。

def domTo(self, s):
...

《課題2》値域の限定

《課題2》値域の限定:指定したシーケンスと同じ「値」を持つ、新たな辞書が得られるように、次の関数を定義してください。

>>> ex
{'A': 1, 'C': 3, 'B': 2}
>>> rngTo(ex, [1,2,0])
{'A': 1, 'B': 2}

指定した xrange(3) の各要素と同じ値を持つ、新たな辞書が得られます。同じ値 0 が存在しないなら、それを無視します。

def rngTo(self, s):
...

《課題3》

《課題3》メソッド dict.fromkeys を参考に、次の関数を定義してください。

>>> ex
{'A': 1, 'C': 3, 'B': 2}
>>> fromvalues(ex, [1,3], 0)
{'A': 0, 'C': 0}
>>> fromvalues(ex, [1,3])
{'A': None, 'C': None}

第2引数に指定したリストの各要素と同じ「値」を持つ要素対だけを対象とする、新たな辞書が得られます。第3引数を指定すると、それが値の規定値になります。第3引数を省略すると、すべての値は None になります。ただし、同じ「値」を持たない要素対は、それを無視します。

def fromvalues(self, values, default=None):
...


3/3