組み込み関数 reduce


  • 2008年5月23日(金)

組み込み関数 map

組み込み型 dict

  • >>> dir(dict)

['__class__', '__cmp__', '__contains__', '__delattr__', '__delitem__', '__doc__', '__eq__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setitem__', '__str__', 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']

dict.__str__

dict.__init__

  • 2008年8月19日(火) dict.__init__


dict.update


dict.keys/dict.values/dict.Items


dict.fromkeys

はじめに

良い文章を書こうと思ったら、多くの優れた作品を読むことです。同じように、良いコードを書こうと思ったら、多くの優れたプログラムを読むことです。
Python を学習するときに、マニュアルや入門書を読むのもひとつの手段です。しかし、その王道は、Pythonソースコードを読むことです。ソースコードを読まずに Python を語るのは「映画を見ずにその作品を語る」ようなものです。オープンソースという恩恵に浴しながら、それを活用しない手はありません。
Pythonソースコードは、C言語で記述されているので、Python のみならず、C言語の学習にも役立ちます。同様に、JythonソースコードJava で、IronPythonソースコードC# で記述されているので、同時に Java/C# も習得できます。まるで、一粒で二度美味しい「アーモンドグリコ」のように、なんだかちょっと得した気分になりませんか。(^.^)
とは言え、ソースコードを読破するのは、容易いものではありません。しかし、それを記述したプログラマーの労力を考えるなら、楽してその技術を習得できるのですから、あせらずにじっくりと「長〜い目で取り組む」姿勢が大切です。
それでも、全コードを読破する頃(または道半ば)には、新たなリリースが発表されることでしょう。「24 -TWENTY FOUR-」をシーズン6まで見終えても、その続編が製作されています。ソースコードを読み始めると、ハマってしまうところには、同じ醍醐味があるかもしれませんね。(^.^)
この記事では、Pythonソースコードを読み解きながら、同時に Java/C# も習得しようとする、実に欲張りな企画が発端となっています。一挙両得となるか「二兎を追う者は一兎をも得ず」となるか、それは読者のみなさん精進次第です。とくに、初心者にお勧めしたい箇所を拾い読みすることで、ソースコードを読破するお手伝いができれば、幸いです。

Contents

  • >>> dir(__builtins__)

[... 'abs', 'all', 'any', 'apply', 'basestring', 'bool', 'buffer', 'callable', 'chr', 'classmethod', 'cmp', 'coerce', 'compile', 'complex', 'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'execfile', 'exit', 'file', 'filter', 'float', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'intern', 'isinstance', 'issubclass', 'iter', 'len', 'license', 'list', 'locals', 'long', 'map', 'max', 'min', 'object', 'oct', 'open', 'ord', 'pow', 'property', 'quit', 'range', 'raw_input', 'reduce', 'reload', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unichr', 'unicode', 'vars', 'xrange', 'zip']

組み込み型 set/frozenset

  • >>> dir(set)

['__and__', '__class__', '__cmp__', '__contains__', '__delattr__', '__doc__', '__eq__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__iand__', '__init__', '__ior__', '__isub__', '__iter__', '__ixor__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__rand__', '__reduce__', '__reduce_ex__', '__repr__', '__ror__', '__rsub__', '__rxor__', '__setattr__', '__str__', '__sub__', '__xor__', 'add', 'clear', 'copy', 'difference', 'difference_update', 'discard', 'intersection', 'intersection_update', 'issubset', 'issuperset', 'pop', 'remove', 'symmetric_difference', 'symmetric_difference_update', 'union', 'update']


set.__str__《in draft》


set.__contains__

set.union/set.intersection/set.difference/set.symmetric_difference

set.issubset
set.update