2014年1月18日土曜日

開発環境

初めてのコンピュータサイエンス(Jennifer CampbellPaul GriesJason MontojoGreg Wilson(著)長尾 高弘(翻訳))の15章(データベース)、15.11(練習問題)、4.を解いてみる。

15.11(練習問題)、4.

コード(BBEdit)

sample.py

#!/usr/bin/env python3.3
#-*- coding: utf-8 -*-

import sqlite3 as sqlite

def run_query(db, query, t=None):
    con = sqlite.connect(db)
    cur = con.cursor()
    if t:
        cur.execute(query, t)
    else:
        cur.execute(query)
    data = cur.fetchall()
    cur.close()
    con.close()
    return data

db = 'census.db'
print(run_query(db, 'SELECT * FROM Density'))
print(run_query(db,
    'SELECT * FROM Density WHERE Population > (?) AND Area > (?)',
    (200000, 500000)))

入出力結果(Terminal)

$ ./sample.py
[('ニューファンドランド・ラブラドール州', 512930, 370501.69), ('プリンスエドワードアイランド州', 135294, 5684.39), ('ノバスコシア州', 908007, 52917.43), ('ニューブランズウィック州', 729498, 71355.67), ('ケベック州', 7237479, 1357743.08), ('オンタリオ州', 11410046, 907655.59), ('マニトバ州', 1119583, 551937.87), ('サスカチュワン州', 978933, 586561.35), ('アルバータ州', 2974807, 639987.12), ('ブリティッシュコロンビア州', 3907738, 926492.48), ('ユーコン準州', 28674, 474706.97), ('ノースウェスト準州', 37360, 1141108.37), ('ヌナブト準州', 26745, 1925460.18)]
[('ケベック州', 7237479, 1357743.08), ('オンタリオ州', 11410046, 907655.59), ('マニトバ州', 1119583, 551937.87), ('サスカチュワン州', 978933, 586561.35), ('アルバータ州', 2974807, 639987.12), ('ブリティッシュコロンビア州', 3907738, 926492.48)]
$

0 コメント:

コメントを投稿