Python 循环 (loop/while/for/range/if/else/elif/True/break/continue)

目录

  • 1. Python 循环 (loop/while/for/range/if/else/elif/True/break/continue)
    • 1.1. 三种循环结构 (for…in…/while/range)
      • 1.1.1. for…in…
      • 1.1.2. while
      • 1.1.3. range()
    • 1.2. 九九乘法表——for 循环搭配 range() 实现 "输入层数"
    • 1.3. 循环中的 else 以及 elif 的使用
      • 1.3.1. else
      • 1.3.2. elif
    • 1.4. 循环中的 break 和 contiune
      • 1.4.1. break
      • 1.4.2. continue

1. Python 循环 (loop/while/for/range/if/else/elif/True/break/continue)

1.1. 三种循环结构 (for…in…/while/range)

1.1.1. for…in…

该格式在 python 中是最为常见的一种格式, 使用极为广泛。

	格式: for 参数 in 循环体: 
				pass

上述格式中, 可以做循环体的内容有很多, 如元组、列表、字符串等等。只要可以遍历、可循环的的内容均可作为循环体存在。
其中的参数, 主要是用来存放每次循环体送来的单个元素, 实现循环的作用。在实际使用中, 常和 if 判断语句联合使用。

#input
str_01 = '时间都去哪了! ! ! '
for i in str_01:
	print(i)

#output
时
间
都
去
哪
了
! 
! 
! 

1.1.2. while

while 循环和 for…in… 循环的不同之处在于, while 要先将循环变量初始化或者直接使用 while True 这种死循环形式。

格式: i = 0
	 while i >=10:
	 	pass
	 	i +=1

在我们平时使用中, 这种格式使用频率, 相比较于 for…in… 是比较低的。而对于 while 循环, 最为常见的格式是:

格式: while True:
		pass

该格式, 在大部分项目中都会用到。

#input
while True:
	print('hello world!!!__hello python!!!')
#output
hello world!!!__hello python!!!
hello world!!!__hello python!!!
hello world!!!__hello python!!!
hello world!!!__hello python!!!
hello world!!!__hello python!!!
hello world!!!__hello python!!!
hello world!!!__hello python!!!
hello world!!!__hello python!!!
hello world!!!__hello python!!!
.
.
.
.
.
.

1.1.3. range()

range() 的使用主要是和 for 循环一起出现的。

range() 的形式有三种:

  • range(stop): 默认从 0 开始, 给出结束的 int 型参数即可
  • range(start,stop)
  • range(start,stop,step)

上述中的 stop 参数, 都是取不到的, 结尾的参数为 stop-1。这也是 python 的一大特点, 我学习一个多月以来, 所有用括号扩起来的循环或者取值, 都是左取右不取

#input
for i in range(5):
	print(i)
print('*'*10)

for x in range(1,7):
	print(x)
print('*'*10)

for y in range(2,19,3):
	print(y)
print('*'*10)

#output
0
1
2
3
4
**********
1
2
3
4
5
6
**********
2
5
8
11
14
17
**********

for 循环搭配 range() 的形式, 极为常见。如我们常见的九九乘法表, 使用 for 循环和 range() 搭配的形式, 就可以轻松完成。

1.2. 九九乘法表——for 循环搭配 range() 实现 “输入层数”

#input
#九九乘法表, for 循环++range() 实现
a = int(input('请输入层数: '))

for i in range(1, 10):
    for j in range(i, 10):
        print('{}*{}={:<5d}'.format(i, j, i*j), end='')		# 使用 format 格式化输出
    print()
    
#output
请输入层数: 9
1*1=1    1*2=2    1*3=3    1*4=4    1*5=5    1*6=6    1*7=7    1*8=8    1*9=9    
2*2=4    2*3=6    2*4=8    2*5=10   2*6=12   2*7=14   2*8=16   2*9=18   
3*3=9    3*4=12   3*5=15   3*6=18   3*7=21   3*8=24   3*9=27   
4*4=16   4*5=20   4*6=24   4*7=28   4*8=32   4*9=36   
5*5=25   5*6=30   5*7=35   5*8=40   5*9=45   
6*6=36   6*7=42   6*8=48   6*9=54   
7*7=49   7*8=56   7*9=63   
8*8=64   8*9=72   
9*9=81   

1.3. 循环中的 else 以及 elif 的使用

1.3.1. else

else 主要用于和 if 搭配使用。

格式: if 条件: 
		pass1
	else:
		pass2

上述格式中, 如果 if 后面的条件成立(即为 Ture)则运行 pass1 语句。条件不成立(即为 flase), 则运行 else 后面的 pass2 语句。

#input
salary = int(input('请输入你的工资: '))
if salary >=10000:
	print('你的工资为{}, 恭喜你已经超过一线城市的平均水平'.format(salary))
else:
	print("你的工资为{}, 加油, 努力工资努力生活! ! ! ".format(salary))

#output
请输入你的工资: 12000
你的工资为 12000, 恭喜你已经超过一线城市的平均水平

1.3.2. elif

当出现的判断条件较多, 我们需要进行较为精准的判断时, 我们就需要使用 elif 来实现了。

格式: if 条件判断 1:
		 <执行 1>
	 elif 条件判断 2:
		 <执行 2>
	 elif 条件判断 3:
		 <执行 3>
	 else:
		 <执行 4>

上述判断条件的执行顺序是: 那个条件判断成立就执行那个后面的执行语句。若均不成立, 这执行 else 后面的执行语句。

#input
age = 20
if age >= 6:
    print('teenager')
elif age >= 18:
    print('adult')
else:
    print('kid')
    
#output
teenager

1.4. 循环中的 break 和 contiune

1.4.1. break

break 的意思是: 结束当前循环。

#input
i = 0
while i<10:
    i+=1
    if i==5:  #当 i=5 时, 结束整个循环
        break
    print("i=%d"%i)
 
#output
i=1
i=2
i=3
i=4

1.4.2. continue

意思为结束当前循环进入下一个循环

#input
i = 0
while i<10:
    i+=1
    if i==5:  #当 i=5 时, 结束当前循环进入下一个循环
        continue
    print("i=%d"%i)
 
#output
i=1
i=2
i=3
i=4
i=6
i=7
i=8
i=9
i=10

上面的循环中, 当 i = 5 时, 不会执行 contiune 下面的语句, 而是直接进入下一次循环。

你可能感兴趣的:(python,python,数据库,开发语言)