2018年12月6日木曜日

開発環境

Head First Python 第2版 ―頭とからだで覚えるPythonの基本 (Paul Barry (著)、嶋田 健志 (監修)、木下 哲也 (翻訳)、オライリージャパン)の9章(コンテキストマネジメントプロトコル - with文を使う)、自分で考えてみよう(p. 343)を取り組んでみる。

コード(Emacs)

Python 3

#!/usr/bin/env python3
import psycopg2 as sql


class UseDatabase:
    def __init__(self, dbconfig: dict) -> None:
        self.dbconfig = dbconfig

    def __enter__(self):
        self.conn = sql.connect(**self.dbconfig)
        self.cursor = self.conn.cursor()
        return self.cursor

    def __exit__(self, *args):
        pass


if __name__ == '__main__':
    dbconfig = {'host': '127.0.0.1',
                'database': 'vsearchlogdb'}
    with UseDatabase(dbconfig) as db:
        print(db)

入出力結果(Terminal, cmd(コマンドプロンプト), Jupyter(IPython))

$ ./sample2.py
<cursor object at 0x1099f6710; closed: 0>
$

0 コメント:

コメントを投稿