初学python(七)循环与条件

在python中,条件后边必须要加上:从C那边转过来感觉挺别扭的,不过这样跟能区别赋值与条件吧。

条件

if 条件1:
    <statements>
elif 条件2:
    <statements>
elif 条件3:
    <statements>
else:
    <statements>

恩,条件大概就是这样的。

for循环

for循环在各个语言中应该都有的。额,汇编也是可以通过jump 和 goto 实现的。
在python中,遍历起来会更方便。很像java的那个for遍历。它的for循环中有一个else,开始不太理解,后来想明白就是类似于收尾的一个工作,如果循环中没有通过break跳出循环的话,在循环结束后就执行else中的代码。如果执行了break则不会执行else中的内容。

for <variable> in <sequence>:
    <statements>    #变量在队列中
else:
    <statements>    #循环结束且没有通过break跳出循环

如果for循环中有if,就一定要注意代码的格式问题了,要不就不知道elseif的还是for的。例如

for x in [1]:
    if x == 1:
        print("Hello")
else:
    print("World!")

它是执行结果就是:

Hello
World!

range()

对于数字的遍历,可以使用range函数,废话不多说,看样例:

>>> for i in range(3):\    #遍历[0,n)
...     print(i)
... 
0
1
2
>>> for i in range(3,5):\    #遍历[x,y)
...     print(i)
... 
3
4
>>> for i in range(0,10,3):\    #以z为步长遍历[x,y)
...     print(i)
... 
0
3
6
9
>>> for i in range(0,-10,-3):\    #同上
...     print(i)
... 
0
-3
-6
-9

还可以通过range()和len()函数结合来遍历有索引的序列。如:

>>> list = ['a','b','c','d']
>>> for i in range(len(list)):\
...     print(i,list[i])
... 
0 a
1 b
2 c
3 d

还可以通过range()得到一个list

>>> list(range(5))
[0, 1, 2, 3, 4]

while

额,忘了这个基本的循环结构了。

while 判断条件:
    <statements>

其实在python中只要注意好缩进就可以了。
还有个奇葩的函数,类似于system.pause,就是pass
写两行代码:

while True:
    pass  # 等待键盘中断 (Ctrl+C)

就可以无限的敲回车了。2333333