Python之判断
和其他语言一样,python同样具有条件判断和循环的操作,比如我们可以编写一个简单的判断操作:使用if关键字可以达到判断的效果,如下例:
1 >>> test_if = raw_input()
2 50
3 >>> if test_if < 50:
4 ... print "you are so yamg"
5 ... else:
6 ... print "you are so old!"
7 ...
8 you are so old!
9 >>>
True,如果是的话就执行print "you are so yamg",否则,执行else子句的内容:print "you are so old!"
注意:
:”否则python编译是没有办法通过的:
1 >>> if test_if
2 File "<stdin>", line 1
3 if test_if
4 ^
5 SyntaxError: invalid syntax
6 >>> if test_if:
7 ... print("hello!")
8 ... else
9 File "<stdin>", line 3
10 else
11 ^
12 SyntaxError: invalid syntax
13 >>>
以上的判断只是为了演示而写的,通常在开发的过程中会编写比较复杂的判断语句,这时候我们需要使用”elif“帮助我们完成。
1 if <条件判断1>:
2 <执行1>
3 elif <条件判断2>:
4 <执行2>
5 elif <条件判断3>:
6 <执行3>
7 else:
8 <执行4>
1 >>> if test_elif < 5:
2 ... print "a"
3 ... elif test_elif > 5 and test_elif<10:
4 ... print "b"
5 ... elif test_elif > 10:
6 ... print "c"
7 ... else:
8 ... print "d!"
9 ...
10 c
11 >>>
if
语句执行有个特点,它是从上往下判断,如果在某个判断上是True
,把该判断对应的语句执行后,就忽略掉剩下的elif
和else
。
if语句的简写:
1 >>> test1 = raw_input()
2 23
3 >>> if test1:
4 ... print("Yes!")
5 ... else:
6 ... print("False!")
7 ...
8 Yes!
9 >>>
只要test1是非零数值、非空字符串、非空list等,就判断为True
,否则为False
注意:raw_input()
读取的内容永远以字符串的形式返回,把字符串和整数比较就不会得到期待的结果,必须先用int()
把字符串转换为我们想要的整型:
1 >>> h = int(raw_input('H:'))
2 H:12
3 >>> h
4 12
5 >>> #以上显示的是int型的数字类型,但是用raw_input()得到的确实是字符串类型例:
6 ...
7 >>> test_char = raw_input()
8 12
9 >>> test_char
10 '12'
11 >>>
Python之循环:
Python的循环有两种,一种是for...in循环,依次把list或tuple中的每个元素迭代出来,看例子:
1 >>> #循环打印列表
2 ...
3 >>> name = ['a','b','c','d','e','f']
4 >>>
5 >>> name
6 ['a', 'b', 'c', 'd', 'e', 'f']
7 >>> for n in name:
8 ... print n
9 ...
10 a
11 b
12 c
13 d
14 e
15 f
16 >>>
所以for x in ...
循环就是把每个元素代入变量n
,然后执行缩进块的语句。再比如我们想计算1-10的整数之和,可以用一个sum
变量做累加:
1 >>> sum = 0
2 >>> for x in [1,2,3,4,5,6,7,8,9,10]:
3 ... sum += x
4 ... print sum
5 ...
6 1
7 3
8 6
9 10
10 15
11 21
12 28
13 36
14 45
15 55
可以使用range(11)简单的实现相同的列子:
1 >>> for x in range(11):
2 ... sum += x
3 ... print sum
4 ...
5 1
6 3
7 6
8 10
9 15
10 21
11 28
12 36
13 45
14 55
15 >>>
第二种循环是while循环,只要条件满足,就不断循环,条件不满足时退出循环。比如我们要计算100以内所有奇数之和,可以用while循环实现:
1 >>> sum = 0
2 >>> sum
3 0
4 >>> n = 99
5 >>> while n > 0:
6 ... sum += n
7 ... n -= 2
8 ... print sum
9 ...
10 99
11 196
12 291
13 384
14 475
15 564
16 651
17 736
18 819
19 900
20 979
21 1056
22 1131
23 1204
24 。
25 。
26 。
python条件判断和循环讲解到此为止!