2015年2月12日木曜日

開発環境

  • OS X Yosemite - Apple (OS)
  • Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
  • Python 3.4 (プログラミング言語)

Introducing Python: Modern Computing in Simple Packages(Bill Lubanovic (著)、 O'Reilly Media)のChapter 8(Data Has to Go Somewhere)、Things to Do 8.7.を解いてみる。

Things to Do 8.7.

コード(Eacs, BBEdit)

sample7.py

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

import csv
import sqlite3

connection = sqlite3.connect('books.db')
cur = connection.cursor()

with open('books.csv') as f:
    cin = csv.DictReader(f)
    ins = 'INSERT INTO books (title, author, year) VALUES(?, ?, ?)'
    for row in cin:
        cur.execute(ins, (row['title'], row['author'], row['year']))

cur.execute('SELECT * FROM books')
for row in cur.fetchall():
    print(row)        

connection.commit()

cur.close()
connection.close()

入出力結果(Terminal, IPython)

$ ./sample7.py
('The Weirdstone of Brisingamen', 'Alan Garner', 1960)
('Perdido Street Station', 'China Miéville', 2000)
('Thud!', 'Terry Pratchett', 2005)
('The Spellman Files', 'Lisa Lutz', 2007)
('Small Gods', 'Terry Pratchett', 1992)
$

0 コメント:

コメントを投稿