2012年7月11日水曜日

開発環境

『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7) のIV部(関数)のまとめ演習4(キーワード引数)を解いてみる。

4.

コード(TextWrangler)

sample.py

#!/usr/bin/env python
#encoding: utf-8

def adder1(good=1,bad=2,ugly=3):
 return good + bad + ugly

def adder2(**args):
 result = 0
 for key in args.keys():
  if(result):
   result += args[key]
  else:
   result = args[key]
 return result

入出力結果(Terminal)

$ python
Python 3.2.3 (default, Apr 18 2012, 20:17:30) 
[GCC 4.2.1 Compatible Apple Clang 3.0 (tags/Apple/clang-211.12)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from sample import *
>>> adder1(4)
9
>>> adder1(4,5)
12
>>> adder1(4,5,6)
15
>>> adder1(1,2,3,4)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: adder1() takes at most 3 positional arguments (4 given)
>>> adder2(a=1,b=2)
3
>>> adder2(a=1,b=2,c=3)
6
>>> adder2(a=1)
1
>>> adder2(a='spam',b='egg')
'spamegg'
>>> quit()
$

0 コメント:

コメントを投稿