每次学新的语言,条件语句、循环语句都是一带而过,因为基本都是一样的,除了写法有些差异。
本以为Python也是这样,没想到还是为此开了一篇新的笔记。
因为它的确有独特之处。
条件控制
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
这个没太多要说的,只要注意条件语句之后要加冒号。
Note: 条件控制没有switch… case…语句
循环语句
1. while
while condition:
statement
2. for
for <variable> in <sequence>:
statement
Note: 没有do … while循环
接下来就是python的独特之处了。
独特之处
1. else子句
else在python中有了新的本领,不仅服务于if,还可以配合while, for使用。
# while ... else...
count = 0
while count < 5:
print(count, "小于5")
count = count + 1
else:
print(count, "大于或等于5")
# for ... else ...
animals = ["dog", "cat", "bird", "tiger"]
for x in animals:
print(x)
else:
print("No this animal")
print("end for loop")
虽然合作伙伴多了,但else还是原来的else,与合作伙伴之间形成互斥分支。
- 对于for循环,当穷尽循环列表时进入else分支。
- 对于while循环,当循环条件(变)为false时进入else分支。
但是如果进入循环,被break终止,则不会进入else分支。
2. range()函数
内置函数range()用来遍历整数序列。
用几个例子来说明range()的使用方法:
# 示例1
>>>for i in range(5):
... print(i, end = " ")
...
0 1 2 3 4 5
# 示例2, 指定区间
>>>for i in range(5, 9):
... print(i, end = " ")
...
5 6 7 8
# 示例3, 指定区间和步长
>>>for i in range(0, 10, 3)
... print(i, end = " ")
...
0 3 6 9
# 示例4, 负数
>>>for i in range(-10, -100, -30)
... print(i, end = " ")
...
-10 -40 -70
# 示例5, 遍历序列的索引
>>>animals = ["dog", "cat", "bird", "tiger"]
>>>for i in range(len(animals)):
... print(i, a[i])
...
0 dog
1 cat
2 bird
3 tiger
# range()还可以用来创建序列
# 创建list
>>>list(range(5))
[0, 1, 2, 3, 4]
# 创建元组
>>>tuple(range(5))
(0, 1, 2, 3, 4)
# 创建集合
>>>set(range(5))
{0, 1, 2, 3, 4}
3. pass语句
pass是空语句,不做任何事情。作用是保持程序结构的完整性,一般用做占位语句。
# 等待键盘中断
>>>while True:
... pass
如果定义了一个函数,还没想好函数内容,就可以用pass填充,留到以后再补充。
pass避免了空函数体或空语句块报错。