Python的判断结构和循环结构
2019-12-04 本文已影响0人
LiuShaodong
判断结构和循环结构是编程语言最基本的控制结构,其语法格式在各个编程语言中也是大同小异。与java相比,python支持连续判断:x<y<z。这里我们用PyCharm来进行演示Python的判断结构和循环结构,没有PyCharm的小伙伴可以通过我之前的一个帖子下载安装PyCharm:https://www.jianshu.com/p/68f0565c7036。
首先,我们在python_base下新建if_for.py
三种较为常用的判断结构:
def if_demo():
x, y, z = 1, 2, 3
# 1、判断结构 if
if x < y < z:
print("x<y<z") # x<y<z
# 2、判断结构 if else
if x > y:
print("x>y")
else:
print("x=y or x<y") # x=y or x<y
# 3、判断结构 if elif else
if x == y:
print("x==y")
elif x < y:
print("x<y") # x<y
else:
print("x>y")
从控制台获取输入用于判断结构:
def if_input_demo():
# 从控制台获取输入进行判断
number = int(input("Please give a number:"))
if number == 110:
print("警察 is coming")
elif number == 120:
print("医生 is coming")
else:
print("sorry ...")
while循环 for循环以及break和continue关键字的使用:
def for_demo():
# while循环
condition = 1
while (condition < 10): # 输出1-9
print(condition)
condition = condition + 1
# for循环
data_list = [110, 120, 123, 345, 5]
for element in data_list: # 输出data_list列表的各个元素
print(element)
# for循环 range(1,10,1) range(start,end,step) range取值范围包括start,不包括end,step为步长
for i in range(1, 10): # 省略步长时,默认步长为1
print(i) # 输出 1-9
# 带步长的range(1,10,5)
for i in range(1, 10, 5):
print(i) # 输出1,6
# continue 和 break
# continue 语句为跳出本次循环,继续下一次循环。而break语句为强制跳出整个循环
# continue 和 break 作用于 while 和 for循环结构中
start = 0
while (True):
start = start + 1
if start == 5:
print("break 可以跳出整个循环,即使循环条件永远为True")
break
if (start < 4):
print("continue 跳出本次循环,继续下一次循环")
continue
print("只有start=" + str(start) + "的时候,才会执行该条语句!")
循环嵌套:
def for_for_demo():
# 循环嵌套
for i in range(1, 10):
for j in range(1, i + 1):
k = i * j
print(str(j) + " * " + str(i) + " = " + str(k), end="\t")
print()
for_for_demo()中我们用到的print()在python3.x是一个函数,但在python2.x不是一个函数,而是一个关键字,print()函数的语法如下:
print(objects, sep=' ', end='\n', file=sys.stdout, flush=False)
objects -- 表示可以一次print很多对象,例如print(1, 2, 3) # 1 2 3
sep -- 对象与对象之间的间隔符号,默认是一个空格,例如print(1, 2, 3, sep='_') # 1_2_3
end -- 以什么结尾,默认是换行符'\n',print(1,2,3,sep='_',end='$') # 1_2_3$
file -- 要写入的文件对象
flush -- 跟file搭配使用,默认为False,如果flush关键字参数为True,流会被强制刷新到file中。