爬虫類嫌いのPython日記

爬虫類が大の苦手の筆者が、Pythonに挑戦。他にも、RubyやObjective-C、Google Appengine、Herokuなど色々とチャレンジしています。

Pythonのビルトインオブジェクト(3)

ファイル

ファイル、ファイルへのインターフェースとして使用されます。
他のオブジェクトとは異なり、オブジェクトを作成するためのリテラル構文はありません。

>>>f = open('data.txt', 'w')    # 書き込みモードで新規ファイルオブジェクトを生成
>>>f.write('Hello\n')           # 文字列を書き込み
>>>f.write('World\n')
>>>f.close()                    # ファイルを閉じる

>>>f = open('data.txt')         # 第2引数を省略すると、デフォルトで'r'として処理
>>>text = f.read()              # ファイル全体を読み込む
>>>text
Hello\nWorld\n

>>>print text                   # printが制御文を処理して表示
Hello
World

>>>text.sprit()                # ファイルの内容は、文字列として扱われる
['Hello', 'World']

特別、他の言語と異なるような部分はないですね。
他の言語経験者であれば、問題なく使えるのではないでしょうか?

集合

最近、Pythonに導入された型のようです。
集合オブジェクトは、文字通り、オブジェクトの集合で、数学の集合演算が使えると言う特徴があります。

>>>X = set('hoge')    # set関数で2つの集合を作成
>>>Y = set('fuga')
>>>X, Y
set(['e', 'g', 'h', 'o']), set(['a', 'f', 'g', 'u'])

>>>X & Y              # 交差
set(['g'])

>>>X | Y              # 結合
set(['e', 'g', 'h', 'o', 'a', 'f', 'u'])

>>>X - Y              # 差
set(['e', 'h', 'o'])

これは、色々と便利に使えそうですね。
今後、もっと掘り下げてみたいと思います。

ブーリアン

論理値と呼ばれる型です。
説明は不要かと思いますが……

>>>1 > 2, 2 > 1    # ブール型
(False, True)
>>>bool('hoge')
True

>>>X = None        # None
>>>print X
None
>>>L = X * 3       # 3つのNoneからなるリストを作成
>>>L
[None, None, None]

>>>type(L)         # Type型

>>>type(type(L))   # Type型自体もオブジェクト

まぁ、条件文とかでお世話になるので、軽く触れておきました。