python入门到秃顶(5):控制流程
控制流程
一,条件判断(if语句)
- 代码块是什么? 就是一部分缩进相同的代码。
- 缩进是什么? 代码前面空出来的部分。
- 为什么要空出来? 为了使用缩进来区分代码块,体现层次关系。
- [ ],’ ',( ),{ },set( ),0,None 这些条件都为假,其余对象都为真!!
>>> if [] :
>>> print('hello world!') # 不会执行任何东西,因为条件为假!
总结:
- elif只能在有if的代码块下出现
- 一个条件判断只能出现一个if,如果有两个就说明有两个条件判断语句了
二,三目运算
总结:
- 三目运算简洁明了,一般用于简单的判断,可读性不强。
- 但是三目运算只适用于简单的判断,不适用于elif
三,while循环
- while循环:
当while后面的条件为真时执行while下面的代码,执行完一遍以后再回过头来看看while后面的条件是不是True,True就在循环
2,while循环取值:
3,break :终止循环
4,可以在while下面写else,但是只有在不是被break中断的情况下才会执行else
四,迭代循环(for循环)
- 可迭代对象:是一个容器,其中包含内容,可以被迭代取值。只要他的方法里面里 有__iner__ 这个魔法方法,那就是可迭代对象(序 列,散列)
- range和continue(满足条件,结束当次循环)
- 也可以用else
总结:
1. 控制流程主要分为:if条件判断,while条件循环,for条件循环
3. for循环的对象是可迭代对象,如果一个对象(容器)的dir里面有iner这个方法就是可迭代部分
4. 若需求有条件要求,考虑while循环,如果要取出数或者控制循环的次数用for
练习:九九乘法表
for i in range(1,10):
for s in range(1,i+1):
print('{} × {} = {}'.format(s,i,s*i),end=' ')
print()
print()函数自带一个换行(\n)的默认参数,可以修改end,不让打印之后换行!
>>> help(print)
Help on built-in function print in module builtins:
print(...)
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.