Python中的流程控制详解

 更新时间:2021年02月18日 10:05:24   作者:flydean  
这篇文章主要介绍了Python中的流程控制的相关资料,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下

流程控制无非就是if else之类的控制语句,今天我们来看一下Python中的流程控制会有什么不太一样的地方。

while语句

python中的while语句和其他语言没有什么不一样,我使用while语句来编写一个斐波拉赫数列:

In [56]: while x < 10 :
 ...:  print(x)
 ...:  x, y = y, x+y
 ...:
0
1
1
2
3
5
8

if 语句

python中的 if 可以和 elif 或者 else 配合使用:

>>> x = int(input("Please enter an integer: "))
Please enter an integer: 42
>>> if x < 0:
...  x = 0
...  print('Negative changed to zero')
... elif x == 0:
...  print('Zero')
... elif x == 1:
...  print('Single')
... else:
...  print('More')
...
More

if语句很简单,这里就不做过多的介绍。

for语句

Python中的for语句主要用来对序列进行迭代,比如列表或者字符串:

In [57]: ages = [ 10, 14, 18, 20 ,25]

In [58]: for age in ages:
 ...:  print(age)
 ...:
10
14
18
20
25

遍历过程中,为了防止在遍历的时候原序列被修改,我们可以遍历序列的拷贝:

In [59]: for age in ages.copy():
 ...:  print(age)
 ...:
10
14
18
20
25

for语句和range()函数的结合,可以得到不一样的效果。

range()用来生成给定范围内的集合:

In [61]: for age in range(5):
 ...:  print(age)
 ...:
0
1
2
3
4

range()函数还可以带步长作为第三个参数:

In [62]: for age in range(5, 10 , 2):
 ...:  print(age)
 ...:
5
7
9

Range()和len()组合,可以方便的变量列表:

>>> a = ['Mary', 'had', 'a', 'little', 'lamb']
>>> for i in range(len(a)):
...  print(i, a[i])
...
0 Mary
1 had
2 a
3 little
4 lamb

Break

break用来跳出最近的for或者while循环。

要注意的是,for循环可以和else一起使用:

In [64]: for n in range(2, 10):
 ...:  for x in range(2, n):
 ...:   if n % x == 0:
 ...:    print(n, 'equals', x, '*', n//x)
 ...:    break
 ...:  else:
 ...:   print(n, 'is a prime number')
 ...:
2 is a prime number
3 is a prime number
4 equals 2 * 2
5 is a prime number
6 equals 2 * 3
7 is a prime number
8 equals 2 * 4
9 equals 3 * 3

循环中的else语句,会在for循环执行完毕,之后执行。如果我们使用break对for循环进行了中断,那么else语句将不会被执行。

Continue

continue用来跳过此次循环中的后面部分,继续执行下一次循环。

还是刚才的例子,我们使用continue进行改装:

In [68]: for n in range(2, 10):
 ...:  for x in range(2, n):
 ...:   if n % x == 0:
 ...:    print(n, 'equals', x, '*', n//x)
 ...:    continue
 ...:  else:
 ...:   print(n, 'is a prime number')
 ...:
2 is a prime number
3 is a prime number
4 equals 2 * 2
4 is a prime number
5 is a prime number
6 equals 2 * 3
6 equals 3 * 2
6 is a prime number
7 is a prime number
8 equals 2 * 4
8 equals 4 * 2
8 is a prime number
9 equals 3 * 3
9 is a prime number

可以看到,在continue中,else语句会一直执行。

Pass

pass表示的是什么都不做。是一个空的执行。

通常我们使用pass作为函数或条件子语句的占位符,表示具体的内容可以在未来进行填充。

可以在while中使用pass:

>>> while True:
...  pass # Busy-wait for keyboard interrupt (Ctrl+C)
...

可以在类中使用pass:

>>> class MyEmptyClass:
...  pass
...

可以在函数中使用pass:

>>> def initlog(*args):
...  pass # Remember to implement this!
...

以上就是Python中的流程控制详解的详细内容,更多关于Python中的流程控制的资料请关注脚本之家其它相关文章!

相关文章

  • Python数据拟合实现最小二乘法示例解析

    Python数据拟合实现最小二乘法示例解析

    这篇文章主要为大家介绍了Python数据拟合实现最小二乘法的示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-10-10
  • 关于Python中异常(Exception)的汇总

    关于Python中异常(Exception)的汇总

    异常是指程序中的例外,违例情况。异常机制是指程序出现错误后,程序的处理方法。当出现错误后,程序的执行流程发生改变,程序的控制权转移到异常处理。下面这篇文章主要汇总了关于Python中异常(Exception)的相关资料,需要的朋友可以参考下。
    2017-01-01
  • 详解python对象之间的交互

    详解python对象之间的交互

    这篇文章主要介绍了详解python对象之间的交互,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-09-09
  • 编写Python脚本批量下载DesktopNexus壁纸的教程

    编写Python脚本批量下载DesktopNexus壁纸的教程

    这篇文章主要介绍了编写Python脚本批量下载DesktopNexus壁纸的教程,相较于普通的爬虫抓取,本文的下载壁纸教程还包括了设置所要下载的分辨率等功能的实现,需要的朋友可以参考下
    2015-05-05
  • python pow函数的底层实现原理介绍

    python pow函数的底层实现原理介绍

    这篇文章主要介绍了python pow函数的底层实现原理介绍,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • 修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法

    修复CentOS7升级Python到3.6版本后yum不能正确使用的解决方法

    这篇文章主要介绍了修复CentOS7升级Python到3.6版本后yum不能使用的问题,本文给大家带来了解决方法,需要的朋友可以参考下
    2018-01-01
  • 在Python中使用Fsolve函数的过程解析

    在Python中使用Fsolve函数的过程解析

    这篇文章主要介绍了在Python中使用Fsolve函数的过程解析,在这篇文章中,我们了解到fsolve 是用来寻找非线性方程的根的,了解到fsolve 可以接受的不同种类的参数以及每个参数的含义,需要的朋友可以参考下
    2023-06-06
  • Python用requests-html爬取网页的实现

    Python用requests-html爬取网页的实现

    本文主要介绍了Python用requests-html爬取网页的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • 跟老齐学Python之坑爹的字符编码

    跟老齐学Python之坑爹的字符编码

    本文主要介绍了在Python2.x中的编码问题,非常的坑爹,不过如果用python3,坑爹的编码问题就不烦恼了。
    2014-09-09
  • Python日期操作学习笔记

    Python日期操作学习笔记

    字符串是使用静态的方式进行存储,只能读而不能直接修改字符内容。特别将一堆对字符串并在一起的时候,虽然可以直接相加,听说这样的速度奇慢,只有用其它函数的方式进行,好在也不太麻烦。
    2008-10-10

最新评论