Cobra/Keywords/if: различия между версиями
< Cobra
Содержимое удалено Содержимое добавлено
шаблон |
DannyS712 (обсуждение | вклад) м <source> -> <syntaxhighlight> (phab:T237267) |
||
Строка 3: | Строка 3: | ||
== Синтаксис == |
== Синтаксис == |
||
<font face="verdana"> |
<font face="verdana"> |
||
< |
<syntaxhighlight lang="python"> |
||
if-statement = |
if-statement = |
||
if <expression> |
if <expression> |
||
Строка 11: | Строка 11: | ||
[else |
[else |
||
<statements>] |
<statements>] |
||
</ |
</syntaxhighlight></font> |
||
<font face="verdana"> |
<font face="verdana"> |
||
< |
<syntaxhighlight lang="python"> |
||
if(<condition>, <texpr>, <fexpr>) |
if(<condition>, <texpr>, <fexpr>) |
||
</ |
</syntaxhighlight></font> |
||
Если condition истинно, то то вычисляется значение выражения texpr, в противном случае значение выражения fexpr.<br /> |
Если condition истинно, то то вычисляется значение выражения texpr, в противном случае значение выражения fexpr.<br /> |
||
Выражения texpr и fexpr не обязаны быть одного типа.<br /> |
Выражения texpr и fexpr не обязаны быть одного типа.<br /> |
||
Строка 24: | Строка 24: | ||
Допустимо использовать оператор if внутри другого оператора условия и так далее. |
Допустимо использовать оператор if внутри другого оператора условия и так далее. |
||
<font face="verdana"> |
<font face="verdana"> |
||
< |
<syntaxhighlight lang="python"> |
||
# Example 1 |
# Example 1 |
||
if name |
if name |
||
Строка 42: | Строка 42: | ||
else |
else |
||
print 'x and y are the same' |
print 'x and y are the same' |
||
</ |
</syntaxhighlight></font> |
||
<font face="verdana"> |
<font face="verdana"> |
||
< |
<syntaxhighlight lang="python"> |
||
# Example 1 |
# Example 1 |
||
print if(x>y, x, y) |
print if(x>y, x, y) |
||
Строка 59: | Строка 59: | ||
# Example 5 |
# Example 5 |
||
foo = if(condition, 'x', 5) # type is Object |
foo = if(condition, 'x', 5) # type is Object |
||
</ |
</syntaxhighlight></font> |
||
{{BookCat}} |
{{BookCat}} |
Текущая версия от 16:07, 16 апреля 2020
If[править]
if оператор используется для выполнения кода в случае удовлетворению условию.
Синтаксис[править]
if-statement =
if <expression>
<statements>
(else if <expression>
<statements>)*
[else
<statements>]
if(<condition>, <texpr>, <fexpr>)
Если condition истинно, то то вычисляется значение выражения texpr, в противном случае значение выражения fexpr.
Выражения texpr и fexpr не обязаны быть одного типа.
Заметим, что вместо if выражений для проверки на nil, лучше использовать оператор coalesce.
Пример[править]
“if-блок” выражений выполняется если условие истинно, иначе выполняется другой “else-блок”. Может выполняться только один блок выражений. “else-блок” является не обязательным.
Допустимо использовать оператор if внутри другого оператора условия и так далее.
# Example 1
if name
print 'Hello, [name].'
# Example 2
if name
print 'Hello, [name].'
else
print "I don't know your name."
# Example 3
if x < y
print 'x is smaller'
else if x > y
print 'x is larger'
else
print 'x and y are the same'
# Example 1
print if(x>y, x, y)
# Example 2
print if(value, 'yes', 'no') # type is String
# Example 3
total += if(direction==DirectionEnum.Long, +1, -1) * amount
# Example 4
foo = if(condition, 'x', nil) # type is String?
# Example 5
foo = if(condition, 'x', 5) # type is Object