IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python之旅:程序控制结构 -> 正文阅读

[Python知识库]Python之旅:程序控制结构

今天我来给大家说一下循环中的控制结构嵌套控制结构嵌套有四种,分别是选择结构嵌套选择结构,选择结构嵌套循环结构,循环结构嵌套选择结构,循环结构嵌套循环结构

选择结构嵌套选择结构

来给大家发一个案例:要求用户如一个数,判断用户输入的数是否是偶数,如果是偶数,则打印“第一个数是偶数”,如果是奇数,那么再要求用户输入一个数,并判断它是不是3的倍数,如果是则打印“第二个数是3的倍数”,否则打印”第二个数不是3的倍数”

num = int(input("请输入一个数:"))
ifnum % 2 == 0:
        print("第一个数是偶数",num)
else:
        num2 = int(input("请再输入一个数:")) 
        if num2 % 3 == 0:
            print("第二个数是3的倍数",num3)
        else:
            print("第二个数不是3的倍数",num3)

选择结构嵌套循环结构

案例:假如需要打印100以内既可以被3整除、又可以被7整除的所有正整数。

代码:

i =1
while i <= 100: 
    ifi %3 == 0 andi %7 ==0:
        print(i)
fori in range(1,101):
    ifi %3 == 0 andi % 7==0: 
        print(i)

循环结构嵌套循环结构

案例:打印2到100(包含100)的所有质素。

这个案例需要分两步完成,第一步,你需要想清楚在程序中如何判断一个数是不是质素,第二布,如何检测指定的范围呢?

要判读一个数是不是质素,首先我们要知道什么是质素:

只有1和它本身两个因数的自然数。也就是说在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。

所以,要判断是不是质素,也是很简单的一件事

n = 2 
while n < 101: 
        is_prime = True 
        for i in range(2,n): 
            if n %i == 0: 
                is_prime = False  
            if is_prime: 
                print(n)
        n += 1

这样就可以判断了,当n 小于101时,定义的is_prime是True,紧接着让i在2-101之中遍历,当n除于i的余数为0时,is_prime为假,此时,输入n,也就是2-100的质素

break关键字

break关键字是在循环中使用的关键字,用于终止所在层的for循环或while循环

for i in range(1, 10): 
        print(i) 
        ifi == 4: 
            break

continue关键字

continue关键字也是用在循环中的关键字,它用于跳出当前for循环或while循环,即终止此次循环接下来的指令,进行下次循环。

for i in range(1,10): 
    if i % 2 == 0: 
        continue     #当i是偶数时,执行continue语句,下面的代码不再执行,循环再次迭代                                                                                     
    print(i)           #如果不是偶数,则不会执continue语句,所以程序会继续执行到print语句

推导式

推导式又称解析式,它能够非常简洁地按照某种规则,以一个可迭代对象(如列表、字典和集合等)为基础,推导出另一个新的数据序列。推导式共有三种类型,分别是列表推导式、字典推导式和集合推导式。

列表推导式

列表推导式的语法简单:[表达式for 变量 in 可迭代对象]

可以这样理解:

1、for 关键字后面的变量会依次从in关键字后面的可迭代对象中取值

2、每次取到的值都会被带入前面的表达式进行计算,作为新列表的一个元素

3、最外层的方括号是列表的标志性身份,它表明这个表达式的结果是生成一个列表,故称列表推导式

不使用列表推导式的代码

list1 = [1,2,3,4,5]
new_list = []
for e in list1: 
    new_list.append(2 *e)

使用了列表推导式

new_list2 = [2 *e fore inlist1]

原来四行的代码,使用的列表推导式只需要一行便可以写出来

列表推导式还可以过滤不符合条件的元素,语法如下:

[表达式for 变量 in 可迭代对象 if 筛选条件

也可以这样理解:

1、for 关键字后面的变量会依次从in关键字后面的可迭代对象中取值,

2、每取一次值,如果通过if 后面筛选条件,那么会带入for关键字前面的表达式进行计算作为新列表的一个元素

3、最外层的方括号表明这个表达式的结果是生成一个列表。

案例:

把一个列表中的偶数取出来创建一个新列表,代码如下:

list1 = [1,2,3,4,5,6,7,8,9]
new_list = [i fori inlist1 ifi %2 ==0]

集合推导式

集合推导式和列表推导式很像,区别在于它使用大括号。语法如下:

无筛选条件: {表达式for 变量 in 可迭代对象}

有筛选条件: {表达式for 变量 in 可迭代对象 if 筛选条件}

set1 = {2,3,4,5,5,6}
set2 = {e * 2 fore inset1 }
set3 = {e fore inset1 if e %2 !=0 }

字典推导式

无筛选条件:{键表达式:值表达式 for 变量 in 可迭代对象}

有筛选条件:{键表达式:值表达式 for 变量 in 可迭代对象 if 筛选条件}

dict1={'x':10,'y':20}
dict2={key.upper():dict1[key] forkeyindict1}
print(dict2)
dict1 = {'x':10, 'y': 20}
dict2 = {key.upper():dict1[key] forkey indict1 ifdict1[key] < 20}
print(dict2)

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-09-11 18:45:04  更:2021-09-11 18:46:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 13:34:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码