開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (BBEditの無料機能制限版、light版)
- Script言語: Python
『初めてのPython 第3版』(Mark Lutz 著、夏目 大 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-393-7) のIV部(関数)16章(スコープと引数)7を解いてみる。
その他参考書籍
7
- グローバル変数を使う
- 関数の外側の関数の変数を使う
- 引数のデフォルト値を使用する
コード(TextWrangler)
sample.py
#!/usr/bin/env python3.3
#-*- coding: utf-8 -*-
# グローバル変数の使用
a = 1
def f():
global a
a += 1
print(a)
f()
f()
f()
# 関数の外側の関数の変数を使用
def g(a):
def h(b):
print(a+b)
return h
g1 = g(1)
g1(1)
g1(2)
g1(3)
# 引数のデフォルト値の使用
def h(a = 1):
print(a)
h()
h()
h()
入出力結果(Terminal)
$ ./sample.py 2 3 4 2 3 4 1 1 1 $
ちなみにJavaScriptの場合。
コード(TextWrangler)
var result = "";
var a = 1;
function f(){
a += 1;
return a;
}
function g(a){
function h(b){
return a+b;
}
return h;
}
function h(a){
if(!a) a = 1;
return a;
}
g1 = g(1);
var ary = [f(), f(), f(), g1(1), g1(2), g1(3), h(), h(), h()];
for(var i = 0; i < ary.length; i++){
result += ary[i] + "\n";
}
$('#pre0').text(result);
0 コメント:
コメントを投稿