Open Source Web Development Tutorials - Dev Shed
.NET言語、Boo入門
(2008/12/02公開)
条件式とループ
BooのifステートメントはPythonのものと似ていて、elifステートメントとelseステートメントと組になります。テストされる条件を括弧でくくる必要はありません。また、それぞれの分岐の本体は字下げされ、その前にコロンを付けて示されます。
n = 3
if n % 2:
print "Odd."
else:
print "Even."
rating = 7
if rating >= 7:
print "Good."
elif rating >= 4:
print "Average."
else:
print "Bad."
Odd.
Good.
Booにはunlessステートメントも存在し、条件が満たされない場合、関連付けられているコードを実行します。
password = "ginger"
unless password == "licorice":
print "You can't come in."
You can't come in.
当然ながら、Booにはwhileループも用意されています。
n = 5
nFactorial = 1
while n > 1:
nFactorial = nFactorial * n
n = n - 1
print nFactorial
120
ただし、Booのforループは、C#などの言語のforeachループに相当します。このループは、列挙型の各要素に対してループを繰り返し実行します。
for n in [4,8,15,16,23,42]:
print n
4
8
15
16
23
42
従来のforループの機能を実現するには、forループ経由で渡される数字のシーケンスに対して繰り返し実行をする必要があります。この数字のシーケンスは、rangeを使用して指定できます。
for n in range(5):
print n
0
1
2
3
4
rangeメソッドには、シーケンスの最後の数値と次の数値への増分も、引数として指定できます。
for n in range(1,3):
print n
print
for n in range(1,3,2):
print n
1
2
1
Copyright © 2008 Ziff Davis Enterprise, Inc.
Originally appearing in the U.S. Edition of Dev Shed. All Rights Reserved.








