コードを書いていて何か困ったことがあった場合、インターネットで検索する以外にも以下のような調べ方があります。
あるオブジェクトがどのようなメソッドを持っているのかなどを調査できます。
sample.py
print dir([1,2,2,2,3,3])
出力例
$ python sample.py
['__add__', '__class__', '__contains__', '__delattr__',
'__delitem__', '__delslice__', '__doc__', '__eq__', '__format__',
'__ge__', '__getattribute__', '__getitem__', '__getslice__',
'__gt__', '__hash__', '__iadd__', '__imul__', '__init__',
'__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__',
'__new__', '__reduce__', '__reduce_ex__', '__repr__',
'__reversed__', '__rmul__', '__setattr__', '__setitem__',
'__setslice__', '__sizeof__', '__str__', '__subclasshook__',
'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove',
'reverse', 'sort']
これを見れば、例えば
print [1,2,2,2,3,3].count(2) #=> 3
とできることを思い出しやすくなります。
ビルトイン関数の使用方法を閲覧できます。printなどはビルトイン関数ではないためドキュメントが存在しません。
sample.py
help(list.append)
print '--------------------'
help(open)
出力例
$ python sample.py
Help on method_descriptor:
append(...)
L.append(object) -- append object to end
--------------------
Help on built-in function open in module __builtin__:
open(...)
open(name[, mode[, buffering]]) -> file object
Open a file using the file() type, returns a file object. This is the
preferred way to open a file.
これと似たものに、docメソッドがあります。
sample.py
print list.append.__doc__
print '--------------------'
print open.__doc__
出力例
$ python sample.py
L.append(object) -- append object to end
--------------------
open(name[, mode[, buffering]]) -> file object
Open a file using the file() type, returns a file object. This is the
preferred way to open a file.