python的常见逻辑语句:分支、流程控制,以及与C#的对比

①if选择语句

选择语句在C#使用以下格式:

int age=20;
if(age>=18)
{
Console.WriteLine("Your age is "+age);
Console.WriteLine("adult");
}
else
{
Console.WriteLine("child");
}
Console.WriteLine("End");

而在Python中,if语句如此实现:

age = 20
if age >= 18:
    print 'your age is', age
    print 'adult'
else:
    print 'child'
print 'END'

通过以上对比可以看出,

1.相比C#的大括号{},Python使用缩进来分辨代码块

2.相比C#的括号(),Python使用:区分辨条件与代码块

另外需要注意的是,Python使用4个空格来缩进代码块。

如果在Python交互环境下敲代码,还要特别留意缩进,并且退出缩进需要多敲一行回车:

>>> age = 20
>>> if age >= 18:
...     print 'your age is', age
...     print 'adult'
...
your age is 20
adult

那么现在又有了一个问题,就是如果出现嵌套选择语句,即else if语句,靠缩进区分代码块的Python的代码就会看起来很冗余,但是Python就是为了简单而特化的语言,肯定不会允许这种事情发生,所以else if可以并起来写成elif,如下:

if age >= 18:
    print 'adult'
elif age >= 6:
    print 'teenager'
elif age >= 3:
    print 'kid'
else:
    print 'baby'

switch呢?没了!

②循环语句

C#中的for、while、do...while三大循环语句在Python中会以怎样的形式出现呢?

1.for

for语句在Python中相当于C#的foreach而不是for,如

L = ['Adam', 'Lisa', 'Bart']
for name in L:
    print name

2.while

while语句倒还是老样子,当条件式满足时就进行循环:

N = 10
x = 0
while x < N:
    print x
    x = x + 1

do...while呢?没了!

break、continue还是老样子,这个就不多讲了,循环语句多重嵌套注意缩进。

标签: python

添加新评论