【2023】某python语言程序设计跟学第四周内容

简介: 【2023】某python语言程序设计跟学第四周内容

ad03811820834b91a61c0e7ad95d6837.gif

1.程序的分支结构

1.1.单分支结构

如果判断成立,则执行

语法:

if <条件>:
    <语句块>

示例:

guess = evel(input())
if guess == 99:
    print("猜对了")

如果guess等于99,那么输入”猜对了“

1.2.二分支结构

根据判断条件结果而选择不同向前路径的运行方式

语法:

if <条件>:
  <语句块1>
else :
  <语句块2>

示例:

guess = eval(input())
if guess == 99:
    print("猜对了")
else:
    print("猜错了")

如果输入的数字等于99,则输出猜对了,否则输出猜错了

紧凑形式:适用于简单的表达式的二分支结构

语法:

<表达式1> if <条件> else <表达式2>

示例:

guess = eval(input())
print("猜{}了".format("对" if guess==99 else "错"))

1.3.多分支结构

根据多个条件来选择不同语句块运行的一种分支结构

语法:

if <条件>:
  <语句块1>
elif:
  <语句块2>
  ... ...
else:
  <语句块3>

示例:

score = eval(input())
if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"
elif score >= 70:
    grade = "C"
elif score >= 60:
    grade = "D"
else:
    grade = "不及格"
print("请输入成绩属于级别{}".format(grade))
  • else:在不发生异常时执行
  • finally:一定执行

1.4.条件判断与组合

操作符:

  • “>”:大于
  • “<”:小于
  • “==”:等于
  • “>=”:大于等于
  • “<=”:小于等于
  • “!=”:不等于

与数学符号类似

条件组合:

  • “and”:与
  • “or”:或
  • “not”:非

1.5.异常处理

语法:

try :
  <语句1>
except :
  <语句2>

2.实例:身体质量指数BMI

BMI是国际常用的衡量人体肥胖与健康程度的重要标准

公式:BMI = 体重kg / 身高m²

代码:

height = float(input("请输入您的身高(单位:米):"))
weight = float(input("请输入您的体重(单位:千克):"))
bmi = weight / (height ** 2)
print("您的BMI指数为:{:.2f}".format(bmi))
who = ""
if bmi < 18.5:
    who = "偏瘦"
elif 18.5 <= bmi < 24:
    who = "正常"
elif 24 <= bmi < 28:
    who = "偏胖"
elif 28 <= bmi < 30:
    who = "肥胖"
else:
    who = "输入错误"
print("BMI指数为:{0}".format(who))

结果:

请输入您的身高(单位:米):1.7
请输入您的体重(单位:千克):67
您的BMI指数为:23.18
BMI指数为:正常

3.程序的循环结构

程序循环内容分为:

  • 遍历循环
  • 无限循环
  • 循环控制保留字
  • 循环的高级用法

3.1.遍历循环

语法:

for <循环变量> in <遍历结构>:
    <语句块>
  • 从遍历结构中逐一提取元素,放在循环变量中
  • 由保留字for和in组成,完整遍历所有元素后结束
  • 每次循环,所获得元素放入循环变量,并执行一次语句块

计数循环:

for i in range(N):
    <语句块>

把语句块内容执行N次

for i in range(M,N,K):
    <语句块>

特定次:

示例:

for i in range(1,5):
    print(i)
1
2
3
4
for i in range(1,6,2):
    print(i)
1
3
5

列表遍历循环:

for item in ls:
    <语句块>

ls是一个列表,遍历其每个元素,产生循环

示例:

for item in [123, "python", 456]:
    print(item, end=",")
123,python,456,

文件遍历循环:

for line in fi:
    <语句块>

fi是一个文件,会循环文件中的每一行

3.2.无限循环

由条件控制的循环运行方式

语法:

while <条件>:
    <语句块>
  • 反复执行语句块,直到条件不满足为止

3.3.循环控制保留字

break和continue

  • break:跳出并结束当前整个循环,执行循环后语句
  • continue:结束当次循环,继续执行后续次数循环

示例:continue

for i in "python":
    if i == "t":
        continue
    print(i, end="")
# 结果没有t   
pyhon

示例:break

for i in "python":
    if i == "t":
        break
    print(i, end="")
# 遇到t结束
py

示例:while

s = "python"
while s != "":
    for c in s:
        print(c, end="")
    s = s[:-1]
# 结果依次少1位
pythonpythopythpytpyp
# 加上break
s = "python"
while s != "":
    for c in s:
        if c == "t":
            break
        print(c, end="")
s = s[:-1]
# 结果
pypypypypypypypypy

3.4.循环高级用法

循环与else结合

语法:

for <循环变量> in <遍历结构>:
    <语句块1>
else:
    <语句块2>

示例:

for c in "python":
    if c == "t":
        break
    print(c, end="")
else:
    print("正常退出")
# 结果
py

4.random库基本使用

random是使用随机数的python标准库

伪随机数:采用梅森旋转算法生成的伪随机序列中元素

random用于生成随机数

使用import random导入

random包括两类函数:

  • 基本随机数函数:seed(),random()
  • 扩展随机数函数:randint(),getrandbits(),uniform(),randrange(),choice(),shuffle()

4.1.基本随机数函数

  • seed:初始化给定的随机数种子
  • random:生成一个0.0-1.0之间的随机小数

示例:

import random
random.seed(10)
print(random.random())
# 结果
0.5714025946899135

4.2.扩展随机数函数

  • randint(a, b):生成一个[a,b]之间的整数
  • randrange(m, n[, k]):生成一个从[m, n]之间以k为步长的随机整数
  • getrandbits(k):生成一个以k比特长的随机整数
  • uniform(a, b):生成一个随机小数
  • choice(seq):从序列seq中随机选择一个元素
  • shuffle(seq):将序列seq中元素打乱排序,输出排序后结果

5.实例:圆周率计算

代码:公式法

pi = 0
N = 100
for k in range(N):
    pi += 1/pow(16,k)*( \
              4/(8*k+1) - 2/(8*k+4) - \
              1/(8*k+5) - 1/(8*k+6) ) 
print("圆周率值是: {}".format(pi))

代码:蒙特卡罗方法

from random import random
from time import perf_counter
DARTS = 1000*1000
hits = 0.0
start = perf_counter()
for i in range(1, DARTS+1):
    x, y = random(), random()
    dist = pow(x ** 2 + y ** 2, 0.5)
    if dist <= 1.0:
        hits = hits + 1
pi = 4 * (hits/DARTS)
print("圆周率值是: {}".format(pi))
print("运行时间是: {:.5f}s".format(perf_counter() - start))

6.相关链接

【2023】某python语言程序设计跟学第一周内容

【2023】某python语言程序设计跟学第二周内容

【2023】某python语言程序设计跟学第三周内容

目录
相关文章
|
7月前
|
Python
277: 程序设计C 实验二 题目五 统计二进制数中的1的个数(python)
277: 程序设计C 实验二 题目五 统计二进制数中的1的个数(python)
|
7月前
|
Python
557: 程序设计C 实验四 题目三 字符串交叉插入(python)
557: 程序设计C 实验四 题目三 字符串交叉插入(python)
|
7月前
|
Python
使用python统计字符串中字母个数的函数程序设计
要统计Python字符串中的字母,首先就应该要判断出这些字符为字母,那该如何判断呢?我们可以将该字符串通过Python内置的字符串方法upper()来全部转换为大写,然后通过for循环来遍历该字符串,每次迭代过程中都使用isupper()方法来判断该字符是否为大写。这样就可以避免将字符串中的中文统计在内。我们首先来通过一个实例来了解isupper()方法的用法,如下:
84 2
|
Python Windows
Python程序设计实例 | 带图标的exe可执行文件的打包
* 本系列推文案例中,建议Python采用3.10及以上版本,NumPy采用1.22.3及以上版本,Matplotlib采用3.5.1及以上版本,Pandas采用1.4.2及以上版本。Python从3.10这个版本开始,标准发行版本中自带的IDLE交互式环境中输入提示符>>>单独放在左侧,不能随输入语句一起复制。为了清晰区分实例在交互环境中的输入和输出,本系列推文在每个输入语句的开头依然保留输入提示符>>>。
114 0
|
5月前
|
人工智能 数据挖掘 大数据
爆赞!GitHub首本标星120K的Python程序设计人工智能案例手册
为什么要学习Python? Python简单易学,且提供了丰富的第三方库,可以用较少的代码完成较多的工作,使开发者能够专注于如何解决问题而只花较少的时间去考虑如何编程。此外,Python还具有免费开源、跨平台、面向对象、胶水语言等优点,在系统编程、图形界面开发、科学计算、Web开发、数据分析、人工智能等方面有广泛应用。尤其是在数据分析和人工智能方面,Python已成为最受开发者欢迎的编程语言之一,不仅大量计算机专业人员选择使用Python进行快速开发,许多非计算机专业人员也纷纷选择Python语言来解决专业问题。 由于Python应用广泛,关于Python的参考书目前已经有很多,但将Pytho
|
5月前
|
分布式计算 NoSQL 物联网
麻省理工IOT教授撰写的1058页Python程序设计人工智能实践手册!
Python是世界上最流行的语言之一,也是编程语言中使用人数增长最快的一种。 开发者经常会很快地发现自己喜欢Python。他们会欣赏Python的表达力、可读性、简洁性和交互性,也会喜欢开源软件开发环境,这个开源环境正在为广泛的应用领域提供快速增长的可重用软件基础。 几十年来,一些趋势已经强有力地显现出来。计算机硬件已经迅速变得更快、更便宜、更小;互联网带宽已经迅速变得越来越大,同时也越来越便宜;优质的计算机软件已经变得越来越丰富,并且通过“开源”方式免费或几乎免费;很快,“物联网”将连接数以百亿计的各种可想象的设备。这将导致以快速增长的速度和数量生成大量数据。 在今天的计算技术中,最新的创新
|
5月前
|
分布式计算 NoSQL 物联网
麻省理工IOT教授撰写的1058页Python程序设计人工智能实践手册!
Python是世界上最流行的语言之一,也是编程语言中使用人数增长最快的一种。 开发者经常会很快地发现自己喜欢Python。他们会欣赏Python的表达力、可读性、简洁性和交互性,也会喜欢开源软件开发环境,这个开源环境正在为广泛的应用领域提供快速增长的可重用软件基础。
|
6月前
|
人工智能 数据挖掘 大数据
538个代码示例!麻省理工教授的Python程序设计+人工智能案例实践
Python简单易学,且提供了丰富的第三方库,可以用较少的代码完成较多的工作,使开发者能够专注于如何解决问题而只花较少的时间去考虑如何编程。 此外,Python还具有免费开源、跨平台、面向对象、胶水语言等优点,在系统编程、图形界面开发、科学计算、Web开发、数据分析、人工智能等方面有广泛应用。 尤其是在数据分析和人工智能方面,Python已成为最受开发者欢迎的编程语言之一,不仅大量计算机专业人员选择使用Python进行快速开发,许多非计算机专业人员也纷纷选择Python语言来解决专业问题。 由于Python应用广泛,关于Python的参考书目前已经有很多,但将Python编程与数据分析、人工智
|
6月前
|
Python
选择程序设计(python)
选择程序设计(python)
|
6月前
|
存储 Python
顺序结构程序设计(python)
顺序结构程序设计(python)