流程控制之 if、while、for;流程打印金字塔
IF语句: 判断失误对错,真假,是否可行
固定语法:
python用缩进表示代码的归属
同意缩进的代码,称之为代码块
1、
if条件:
代码1
代码2
...
# 代码块(同一缩进级别的代码,例如代码1、代码2和代码3是相同缩进的代码,这三个代码组合在一起就是一个代码块,相同缩进的代码会自上而下的运行)
elif 条件:
代码1
...
elif 条件:
代码1
...
2、
if条件
代码1
else: # 不能单独使用,必须和if,while,for配合使用
代码1
...
while循环
1、避免死循环,死循环super耗CPU
2、while+break
break的意思是终止掉当前层的循环,执行其他代码
3、while+continue
continue的意思是终止本次循环,直接进入下一次循环
4、while+else
else会在while没有被break时才会执行else中的代码
for循环
# for可以不依赖于索引取指,是一种通用的循环取指方式
# for的循环次数是由被循环对象包含值的个数决定的,而while的循环次数是由条件决定的
1、for循环也可以按照索引取值
2、for+break 跳出本层循环
3、for+continue 跳出本次循环,进入下一次循环
三目运算符:
a = 1
b = 2
True if a > b else Fales
PS:
len() # 获取数据类型(容器类型)的个数,字符串是特例 获取的是字符串中字符的个数
range在python2与python3中的区别(*****)
python2中
1.range其实就是一个列表
2.xrange其实就是你python3中的range
流程打印金字塔:
# 打印金字塔
''' max_level=5
* current_level=1 空格数=4 星号=1
*** current_level=2 空格数=3 星号=3
***** current_level=3 空格数=2 星号=5
******* current_level=4 空格数=1 星号=7
********* current_level=5 空格数=0 星号=9
'''
max_level = 5
for current_level in range(1,max_level + 1):
for x in range(max_level - current_level):# 先不换行打印打印空格
print(' ',end='')
for y in range(2 * current_level - 1):# 再不换行打印*
print('*',end='')
print()
作业:
限制用户登陆错误尝试次数
1.用户尝试三次(还不对的情况下)之后直接结束程序
2.用户尝试三次错误之后提示用户是否继续尝试,如果用户输入y那么再给用户三次机会
如果用户输入q直接结束程序