Python三大流程简析以及基础算法练习

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


"""

 

 

 

 

一个不会编程的安全工程师,不是一个好的黑客

 

= =
                

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值