Perlではハッシュから存在しないキーで値を取り出そうとするとundefが返ってくる。それを評価してプログラムを書いても動く。 $ perl -w %hash = (foo => 'hoge', bar => 'fuga'); print $hash{baz} ? "あるよ!\n" : "ないよ!\n" ^D ないよ! Pythonの場合、存在しないキーで値を取り出そうとした瞬間にエラーが発生してしまう。 >>> hash = {'spam': 'hoge', 'ham': 'fuga'} >>> print 'あるよ!' if hash['eggs'] else 'ないよ!' Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'eggs' ので、"has_key()"関数で辞書