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学习的第二天

分支结构

if语句的使用

在Python中,要构造分支结构可以使用ifelifelse关键字。所谓关键字就是有特殊含义的单词,像ifelse就是专门用于构造分支结构的关键字,很显然你不能够使用它作为变量名。
分支结构可以嵌套使用,但要注意嵌套的深度。太深影响可读性
代码块:保持相同缩进的代码属于同一代码块。

Python中使用了缩进的方式来表示代码的层次结构,如果if条件成立的情况下需要执行多条语句,只要保持多条语句具有相同的缩进就可以了。换句话说连续的代码如果又保持了相同的缩进那么它们属于同一个代码块,相当于是一个执行的整体。缩进可以使用任意数量的空格,但通常使用4个空格,强烈建议大家不要使用制表键来缩进代码,如果你已经习惯了这么做,可以设置代码编辑工具将1个制表键自动变成4个空格

提示ifelse 的最后面有一个:,它是用英文输入法输入的冒号;程序中输入的'"=()等特殊字符,都是在英文输入法状态下输入的。有很多初学者经常不注意这一点,结果运行代码的时候就会遇到很多莫名其妙的错误提示。强烈建议大家在写代码的时候都打开英文输入法

如果要构造出更多的分支,可以使用if...elif...else...结构或者嵌套的if...else...结构,下面的代码演示了如何利用多分支结构实现分段函数求值。

"""
2 -分段函数求值
        3x - 5, x > 1
f(x) =  x + 2 , -1 <= x <= 1
        5x + 3, x<-1
分支结构可以嵌套使用,但要注意嵌套的深度。太深影响可读性
代码块:保持相同缩进的代码属于同一代码块。
Author: yang
Date: 2021/7/21
"""
x = float(input("x = "))
if x > 1:
    y = 3 * x - 5
elif -1 <= x <= 1:
    y = x + 2
else:
    y = 5 * x + 3
print(f'f(x)={y}')

循环结构

for-in循环

for-in循环,例如计算1到100的和。 被for-in循环控制的语句块也是通过缩进的方式来确定的,这一点跟分支结构完全相同,大家看看下面的代码就明白了。

a = 0
for i in  range(1, 101):
	a += i
print(a)

上面代码中的range(1, 101)可以用来构造一个从1到100的范围,当我们把这样一个范围放到for-in循环中,就可以通过前面的循环变量x依次取出从1到100的整数。当然,range的用法非常灵活,下面给出了一个例子:

  • range(101):可以用来产生0到100范围的整数,需要注意的是取不到101。
  • range(1, 101):可以用来产生1到100范围的整数,相当于前面是闭区间后面是开区间。
  • range(1, 101, 2):可以用来产生1到100的奇数,其中2是步长,即每次数值递增的值。
  • range(100, 0, -2):可以用来产生100到1的偶数,其中-2是步长,即每次数字递减的值。

知道了这一点,我们可以用下面的代码来实现1~100之间的奇数求和、偶数求和。

a = 0
b = 0
for i in range(1, 101):
    if i % 2 == 0:
        a += i
    else:
        b += i
print(a)
print(b)

while循环

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

while 循环条件:
  	循环体

执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假 false 时,循环结束。

执行流程图如下:
在这里插入图片描述

while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:

  1. 无限循环
    如果条件判断语句永远为 true,循环将会无限的执行下去。
    注意:以上的无限循环你可以使用 CTRL+C 来中断循环。
  2. 循环使用 else 语句
    在 python 中,while … else 在循环条件为 false 时执行 else 语句块:
import random

# 产生一个1-100范围的随机数
answer = random.randint(1, 100)
counter = 0
while True:
    counter += 1
    number = int(input('请输入: '))
    if number < answer:
        print('大一点')
    elif number > answer:
        print('小一点')
    else:
        print('恭喜你猜对了!')
        break
# 当退出while循环的时候显示用户一共猜了多少次
print(f'你总共猜了{counter}次')
  1. 简单语句组
    类似 if 语句的语法,如果你的 while 循环体中只有一条语句,你可以将该语句与while写在同一行中。

注意:以上的无限循环你可以使用CTRL+C来中断循环。

break语句

break语句用于结束循环,常与条件判断一起使用,在特定条件下结束循环,后续循环代码不再执行。

break语句的用法:

while 循环条件:
  ……
  if 循环结束条件:
    break    # 满足条件触发break语句
……    # 结束循环,执行循环后代码
for 变量 in 循环序列:
  ……
  if 循环结束条件:
    break    # 满足条件触发break语句
……    # 结束循环,执行循环后代码

实例如:

# while循环
i = 0
while i < 5:
  i = i + 1
  if i == 3:
    break
  print(i)
print('循环结束')
# for循环
for i in range(5):
  i = i + 1
  if i == 3:
    break
  print(i)
print('循环结束')

注意: break语句可以在特定条件下跳出死循环,相当于将循环条件放到了循环体中,用if和break语句来判断并终止循环。

continue语句

continue语句用于在特定情况下跳过当前循环体中的剩余语句,继续进行下一轮循环,常和条件判断一起使用。

while 循环条件:
  ……
  if 循环结束条件:
    continue     # 跳到循环开头,进行下一轮循环
for 变量 in 循环序列:
  ……
  if 循环结束条件:
    continue     # 跳到循环开头,进行下一轮循环
实例如:

# while循环
i = 0
while i < 5:
  i = i + 1
  if i == 3:
    continue
  print(i)
print('循环结束')
# 逐行输出:1 2 4 5 循环结束
# for循环
for i in range(5):
  i = i + 1
  if i == 3:
    continue
  print(i)
print('循环结束')
# 逐行输出:1 2 4 5 循环结束

注意: break语句用于结束循环,continue语句用于跳过当前循环,所以continue语句不能跳出死循环。

Note: break语句和continue语句都需缩进。

. 总结拓展

  1. while循环和for循环辨析
    相同点:将一件事重复n遍;
    不同点:while循环更适合循环次数不确定的情况,for循环更适合循环次数确定的情况。
  2. break和continue语句辨析
    break:跳出整个循环;
    continue:跳出当前循环。
  3. zip()函数
    zip()函数和for循环结合可以同时遍历多个列表。
    zip()函数生成的列表中的元素是一个个元组,上例中name, book这样用逗号分隔开的写法可以获取元组中对应的元素。

注意: 当用zip()函数同时遍历多个列表时,如果两个列表长度不一样,遍历次数以长度短的列表长度为准。

  1. enumerate()函数
    作用:同时给出序列的元素下标和元素。
    注意: enumerate()函数返回值是enumerate类型,也需要用list()函数转换。
    enumerate()函数生成的新列表中的元素也是元组,元组中第一个元素是索引,第二个元素是原来列表中对应索引的元素。

例子

"""
求两个数的最大公约数 - 

Author: yang
Date: 2021/7/21
"""
a = int(input('a= '))
b = int(input('b= '))

while b % a != 0:
    a, b = b % a, a
print(a)
"""
完美数 - 

Author: yang
Date: 2021/7/21
"""

for i in range(1, 10001):
    a = 0
    for k in range(1, i):
        if i % k == 0:
            a += k
    if i == a:
        print(a)
"""
水仙花数 - 

Author: yang
Date: 2021/7/21
"""
for i in range(100, 1000):
    if i == (i // 100) ** 3 + (i % 100 // 10) ** 3 + (i % 100 % 10) ** 3:
        print(i)
"""
判断是不是质数 - 

Author: yang
Date: 2021/7/21
"""
a = int(input('请输入一个正整数:'))
if a==1:
    print(f'不是质数{a}')
elif a==2:
    print(f'是质数{a}')
for k in range(2, a):

    if a % k == 0 :
        print(f'不是质数{a}')
        break
    else:
        print(f'是质数{a}')
        break
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-07-22 14:07:30  更:2021-07-22 14:09:51 
 
开发: 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年5日历 -2024/5/7 2:05:54-

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