快速提问,假设以下if
语句
if dis'n'dat ; then
some command here
else
if dat'n'dis
some other command
fi
fi
我可以使用 elif 将其更改为以下吗?
if dis'n'dat ; then
some command
elif dat'n'dis ; then
some other command
fi
尽管对编程很陌生,但if-else-fi
我确实理解这些语句,但我从未找到以我能理解的方式解释 elif 的答案。
答案1
习语elif
与陈述的结构非常相似case
。
主要是:只选择其中一个匹配的案例。
这:
if test1; then
code for test1 being true.
elif test2; then
code for test2 being true.
elif test3; then
code for test3 being true.
else
code for all tests above being false.
fi
将仅匹配其中一个匹配项test
。
与 case 的区别在于,在 case 语句中测试的是一些模式,而在elif
语句中可能会使用几种不同的测试。
答案2
是的,使用 elif 重写与使用嵌套“if”的原始代码块相同。
Elif 的存在正是为了让您不必在“else”中嵌套新的“if”。我想这可能就是他们称之为“elif”的原因;它是 else 和 if 的组合。