python之--条件判断和循环

Python之判断

和其他语言一样,python同样具有条件判断和循环的操作,比如我们可以编写一个简单的判断操作:使用if关键字可以达到判断的效果,如下例:

 >>> test_if = raw_input()
50
>>> if test_if < 50:
... print "you are so yamg"
... else:
... print "you are so old!"
...
you are so old!
>>>

  在这个简单的判断中,首先,判断if语句的条件是不是True,如果是的话就执行print "you are so yamg",否则,执行else子句的内容:print "you are so old!"

注意:

  在使用if执行判断的时候,千万不要忘记写“:”否则python编译是没有办法通过的:

 >>> if test_if
File "<stdin>", line 1
if test_if
^
SyntaxError: invalid syntax
>>> if test_if:
... print("hello!")
... else
File "<stdin>", line 3
else
^
SyntaxError: invalid syntax
>>>

以上的判断只是为了演示而写的,通常在开发的过程中会编写比较复杂的判断语句,这时候我们需要使用”elif“帮助我们完成。

 if <条件判断1>:
<执行1>
elif <条件判断2>:
<执行2>
elif <条件判断3>:
<执行3>
else:
<执行4>
 >>> if test_elif < 5:
... print "a"
... elif test_elif > 5 and test_elif<10:
... print "b"
... elif test_elif > 10:
... print "c"
... else:
... print "d!"
...
c
>>>

if语句执行有个特点,它是从上往下判断,如果在某个判断上是True,把该判断对应的语句执行后,就忽略掉剩下的elifelse

if语句的简写:

 >>> test1 = raw_input()
23
>>> if test1:
... print("Yes!")
... else:
... print("False!")
...
Yes!
>>>

只要test1是非零数值、非空字符串、非空list等,就判断为True,否则为False

注意:raw_input()读取的内容永远以字符串的形式返回,把字符串和整数比较就不会得到期待的结果,必须先用int()把字符串转换为我们想要的整型:

 >>> h = int(raw_input('H:'))
H:12
>>> h
12
>>> #以上显示的是int型的数字类型,但是用raw_input()得到的确实是字符串类型例:
...
>>> test_char = raw_input()
12
>>> test_char
''
>>>

Python之循环:

Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来,看例子:

 >>> #循环打印列表
...
>>> name = ['a','b','c','d','e','f']
>>>
>>> name
['a', 'b', 'c', 'd', 'e', 'f']
>>> for n in name:
... print n
...
a
b
c
d
e
f
>>>

所以for x in ...循环就是把每个元素代入变量n,然后执行缩进块的语句。再比如我们想计算1-10的整数之和,可以用一个sum变量做累加:

 >>> sum = 0
>>> for x in [1,2,3,4,5,6,7,8,9,10]:
... sum += x
... print sum
...
1
3
6
10
15
21
28
36
45
55

可以使用range(11)简单的实现相同的列子:

 >>> for x in range(11):
... sum += x
... print sum
...
1
3
6
10
15
21
28
36
45
55
>>>

第二种循环是while循环,只要条件满足,就不断循环,条件不满足时退出循环。比如我们要计算100以内所有奇数之和,可以用while循环实现:

 >>> sum = 0
>>> sum
0
>>> n = 99
>>> while n > 0:
... sum += n
... n -= 2
... print sum
...
99
196
291
384
475
564
651
736
819
900
979
1056
1131
1204


python条件判断和循环讲解到此为止!

上一篇:Leetcode Add Binary


下一篇:Problem B: Battle Royale(简单几何)