1,python三大流程分析
2,流程算法基础练习代码
Python三大流程(程序控制流程)
1.if 结构(顺序结构):
从左而右,从上到下的顺序
if 语句:
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
GIF演示:
其中elif可以无限堆叠(python无switch结构,用elif代替),else可以存在也可以不存在,但是只能有一个
2.循环结构(while):
Python 中 while 语句的一般形式:
while 判断条件(condition):
执行语句(statements)……
GIF演示:
while 循环使用 else 语句:在 while … else 在条件语句为 false 时执行 else 的语句块。
while <expr>:
<statement(s)>
else:
<additional_statement(s)>
2.循环结构(for):
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串:
for循环的一般格式如下:
for <variable> in <sequence>:
<statements>
else:
<statements>
range()函数
如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列:
range全局函数:(python3没有xrange)
至少一个参数
0开始:多少个
两个参数:开始结束位置
三个参数:range(5,100,2)每一次增加2个
break和continue关键字的使用(重点):
continue:在python程序中,一旦遇到continue关键字,意味着本次循环终止
break:中断;当我们的循环体中,遇到break关键字,那么不管条件是否满足,循环直接终止
Python三大流程算法训练题:
输出等腰三角形:
i = int(input("请输入实心三角形行数:"))
for j in range(1,i+1):
print(" "*(i-j),"*"*(2*j-1),"\n",end = "",sep = "")
空心等腰三角形:
i = int(input("请输入实心三角形行数:"))
for j in range(1,i):
space = i - j
print(" "*space,"*",end = "",sep = "") #每行开头的空格和*
print(" "*(2*j-3),end = "") #中空的空格
if j == 1: #每一行结尾的*
print()
else:
print("*")
print("*"*(2*i-1))
"""
*
* *
* *
*******
1 0 2x1-3
2 1 2x2-3
3 3 2x3-3
4 5 2x4-3
"""
菱形:
i = int(input("请输入实心三角形行数:"))
for j in range(1,i+1):
space = i - j
print(" "*space,end = "")
print("*"*(2*j-1))
for j in range(i,0,-1):
space = i - j
print(" "*space,end = "")
print("*"*(2*j-1))
空心菱形:
i = int(input("请输入实心三角形行数:"))
for j in range(1,i):
print(" "*(i-j),"*",end = "",sep = "") #每行开头的空格和*
print(" "*(2*j-3),end = "") #中空的空格
if j == 1: #每一行结尾的*
print()
else:
print("*")
i -= 1
for k in range(1,i):
print(" "*(k+1),"*",end = "",sep = "")
print(" "*(i-2*k),end = "")
if (i-k) >= 2:
print("*")
else:
print()
"""
*
* *
* *
* *
* *
* *
*
1 0 2x1-3
2 1 2x2-3
3 3 2x3-3
4 5 2x4-3
"""
一个不会编程的安全工程师,不是一个好的黑客
= =