|
A control statement that contains one or more Boolean expressions whose results determine whether to execute other statements within the If statement. |
An if statemnt allows you to travel down multiple logical paths, depending on a condition given. If the condition given is true, the block of code associated with it will be run.
i = 5
if i == 5:
print "i is equal to 5."
|
i is equal to 5. |
|
notice the difference between If you try an assignment while running a conditional, Boo will emit a warning. |
You may have noticed that unlike other languages, there is no then-endif or do-end or braces { }. Blocks of code are determined in Boo by its indentation. By this, your code blocks will always be noticeable and readable.
Always use tabs for indentation. |
You can have multiple code blocks within eachother as well.
i = 5
if i > 0:
print "i is greater than 0."
if i < 10:
print "i is less than 10."
if i > 5:
print "i is greater than 5."
|
i is greater than 0. i is less than 10. |
With the if statement comes the else statement. It is called when your if statement's condition is false.
i = 5
if i > 5:
print "i is greater than 5."
else:
print "i is less than or equal to 5."
|
i is less than or equal to 5. |
Quite simple.
Now if you want to check for a condition after your if is false, that is easy as well. This is done through the elif statement.
i = 5
if i > 5:
print "i is greater than 5."
elif i == 5:
print "i is equal to 5."
elif i < 5:
print "i is less than 5."
|
i is equal to 5. |
You can have one if, any number of elif s, and an optional else .
The unless statement is handy if you want a readable way of checking if a condition is not true.
i = 5
unless i == 5:
print "i is not equal to 5."
|
It didn't output because i was equal to 5 in that case.
Like in Ruby and Perl, you can follow a statement with a modifier.
i = 0 print i i = 5 if true print i i = 10 unless true print i |
0 5 5 |
|
Don't use Statement with Modifier on a long line. In that case, you should just create a code block. |
Some common conditionals:
Operator |
Meaning |
Example |
|---|---|---|
|
equal |
|
|
not equal |
|
|
greater than |
|
|
less than |
|
|
greater than or equal to |
|
|
less than or equal to |
|
To check if a condition is not true, you would use not.
i = 0
if not i > 5:
print 'i is not greater than 5'
|
i is not greater than 5 |
To check more than one condition, you would use and or or. Use parentheses ( ) to change the order of operations.
i = 5
if i > 0 and i < 10:
print "i is between 0 and 10."
if i < 3 or i > 7:
print "i is not between 3 and 7."
if (i > 0 and i < 3) or (i > 7 and i < 10):
print "i is either between 0 and 3 or between 7 and 10."
|
Note that and requires that both comparisons are true, while or requires that only one is true or both are true.
i is between 0 and 10. |
Go on to Part 04 - Flow Control - Loops