Python从入门到网络爬虫(控制语句详解)

前言

做任何事情都要遵循一定的原则。例如,到图书馆去借书,就需要有借书证,并且借书证不能过期,这两个条件缺一不可。程序设计亦是如此,需要使用流程控制实现与用户的交流,并根据用户需求决定程序"做什么""怎么做"。

Python的流程控制语句主要可以分为以下几类:

  1. 选择语句:if......else......、if......elif......else......、if语句嵌套

  2. 循环语句:for循环、while循环、循环嵌套

  3. pass语句:pass语句

  4. 跳转语句:break语句、continue语句

1. 选择语句

1.1 if语句

python 复制代码
if True:
    print("True")

1.2 if...else语句

python 复制代码
# 定义函数 计算状态
def getState(state):
  if state:
    print("状态启用")
  else:
    print("状态关闭")


# 调用函数 打印状态
getState(state)

1.3 if...elif...else语句

python 复制代码
# 定义函数 计算等级
def getLevel(scored):
  # if else条件语句
  if scored >= 85 and scored <= 100:
    print("A")
  elif scored >= 70 and scored <= 84:
    print("B")
  elif scored >= 60 and scored <= 69:
    print("C")
  else:
    print("D")


# 调用函数 打印等级
getLevel(scored)

1.4 if语句嵌套

2. 循环语句

2.1 while循环

Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。

python 复制代码
# while循环语句
j = 1
# 简单while循环语句
while j < 10:
  print(j)
  j += 1

while...else...语句

2.2 for循环

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

python 复制代码
# for循环语句
for i in range(1, 10):
  print("for:" + str(i))
# 循环字符串
for i in "python":
  print(i)

循环中使用else

在 python 中,for ... else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while ... else 也是一样。

python 复制代码
for num in range(10,20):  # 迭代 10 到 20 之间的数字
   for i in range(2,num): # 根据因子迭代
      if num%i == 0:      # 确定第一个因子
         j=num/i          # 计算第二个因子
         print ('%d 等于 %d * %d' % (num,i,j))
         break            # 跳出当前循环
   else:                  # 循环的 else 部分
      print ('%d 是一个质数' % num)

2.3 循环嵌套

在Python中,允许在一个循环中嵌入另外一个循环,这称为循环嵌套。例如电影院找座位,先循环找第几排,再循环找第几列。实现方式就是在原有的语句块中再写一层循环,此处便不多作解释。

注意:在Python语言的嵌套时,一定要注意缩进,没缩进或者错误缩进都有可能导致程序无法运行或者语义错误

下面的代码示例,我们一起通过一个双层的循环嵌套来实现九九乘法表的实现

python 复制代码
for i in range(1, 10):
    for j in range(1, i+1):
        print('{}x{}={}\t'.format(j, i, i*j), end='')
    print()

输出结果:

python 复制代码
1x1=1    
1x2=2    2x2=4    
1x3=3    2x3=6    3x3=9    
1x4=4    2x4=8    3x4=12    4x4=16    
1x5=5    2x5=10    3x5=15    4x5=20    5x5=25    
1x6=6    2x6=12    3x6=18    4x6=24    5x6=30    6x6=36    
1x7=7    2x7=14    3x7=21    4x7=28    5x7=35    6x7=42    7x7=49    
1x8=8    2x8=16    3x8=24    4x8=32    5x8=40    6x8=48    7x8=56    8x8=64    
1x9=9    2x9=18    3x9=27    4x9=36    5x9=45    6x9=54    7x9=63    8x9=72    9x9=81

3. 跳转语句

当循环条件一直满足时,程序会一直执行下去,就像一辆迷路的车,在某个地方不停地转圈。如果希望在中间离开循环,也就是在for循环的次数结束前,在while条件变False前结束循环,我们可以使用跳转语句。

3.1 break语句

break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。break语句用在while和for循环中。如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。

简单来说就是一个人跑步时,原计划跑十圈。但是跑到第三圈的时候,看到了男神或者女神,于是离开操场,中止了跑步,去和男神女神搭讪去了。只跑了两圈,第三圈没跑完。

python 复制代码
# while循环中使用break语句用于跳出整个循环
x = 0
while x < 10:
  x += 1
  if x % 2 == 0:
    break
  print("x:" + str(x))
# 输出 x:1

3.2 continue语句

Python continue 语句跳出本次循环,而break跳出整个循环。continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。continue语句用在while和for循环中。

简单来讲一个人跑步时,原计划跑十圈。但是跑到第三圈的时候,看到了男神或者女神,于是直接返回起点,和男神女神假装邂逅,一起开始跑步。------跑了九圈,只有第三圈没跑。

python 复制代码
for letter in 'Python':     # 第一个实例
   if letter == 'h':
      continue
   print '当前字母 :', letter
 
var = 10                    # 第二个实例
while var > 0:              
   var = var -1
   if var == 5:
      continue
   print '当前变量值 :', var
print "Good bye!"

4. pass语句

Python pass 是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句。

例如下面代码中如果省略pass语句,则会语法报错,所以pass语句起到占位作用。

python 复制代码
if True:
  pass
else:
  print("hello World")
  
相关推荐
luoluoal1 分钟前
java项目之基于spring boot的多维分类的知识管理系统的设计与实现源码
java·开发语言·vue.js·spring boot·源码
东方月初☾1 分钟前
*C++:list
开发语言·c++
谷隐凡二12 分钟前
python中ocr图片文字识别样例(一)
开发语言·python·ocr
GoFly开发者15 分钟前
Golang开发的OCR-身份证号码识别(不依赖第三方)
开发语言·golang·ocr·go语言身份证识别
Fiona.y18 分钟前
梯度计算中的一些算子
图像处理·python·opencv·计算机视觉
天玄地号21 分钟前
《重生之我在java世界做任务升级》--第一章
java·开发语言
小_t_同学25 分钟前
C语言常见字符串函数模拟实现一
c语言·开发语言
卡卡_R-Python35 分钟前
cnn机器学习时python版本不兼容报错
python·机器学习·cnn
霍夫曼vx_helloworld735237 分钟前
深度学习与应用:人体关键点检测
python·深度学习