2014年8月22日金曜日

開発環境

Head First C ―頭とからだで覚えるCの基本(David Griffiths (著)、Dawn Griffiths (著) 中田 秀基(監訳)(翻訳)、木下 哲也 (翻訳)、オライリージャパン)の3章(小さなツールの作成: 1つのことだけをうまくやる)、ピザの一切れ(p.150)をpythonで考えてみる。

ピザの一切れ(p.150)

コード(BBEdit, Emacs)

order_pizza.py

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

import sys
import getopt

try:
    opts, args = getopt.getopt(sys.argv[1:], "d:t")
except Exception as err:
    print(err)
    sys.exit(1)

delivery = None
thick = False

for opt, arg in opts:
    if opt == '-d':
        delivery = arg
    elif opt == '-t':
        thick = True

if thick:
    print('Thick crust.')

if delivery:
    print('to be delivered {0}.'.format(delivery))

print('Ingredients:')
print('\n'.join(args))

入出力結果(Terminal, IPython)

$ ./order_pizza.py -a
option -a not recognized
$ ./order_pizza.py cheese
Ingredients:
cheese
$ ./order_pizza.py -t -d afternoon
Thick crust.
to be delivered afternoon.
Ingredients:

$ ./order_pizza.py -t -d afternoon tomato cheese
Thick crust.
to be delivered afternoon.
Ingredients:
tomato
cheese
$ ./order_pizza.py -td afternoon tomato cheese
Thick crust.
to be delivered afternoon.
Ingredients:
tomato
cheese
$

0 コメント:

コメントを投稿