当前位置: 首页 > wzjs >正文

dw做新闻网站优化大师免费安装下载

dw做新闻网站,优化大师免费安装下载,建网站需要买些什么,在美国建设网站文章目录 1. 条件语句 (if, elif, else)1.1 if 语句1.2 if...else 语句1.3 if...elif...else 语句1.4 条件表达式的“真值”1.5 嵌套条件语句 2. 循环 (Loops)2.1 for 循环2.2 range() 函数2.3 while 循环 3. 循环控制 (break, continue)3.1 break 语句3.2 continue 语句 4. 循…

文章目录

      • 1. 条件语句 (if, elif, else)
        • 1.1 if 语句
        • 1.2 if...else 语句
        • 1.3 if...elif...else 语句
        • 1.4 条件表达式的“真值”
        • 1.5 嵌套条件语句
      • 2. 循环 (Loops)
        • 2.1 for 循环
        • 2.2 range() 函数
        • 2.3 while 循环
      • 3. 循环控制 (break, continue)
        • 3.1 break 语句
        • 3.2 continue 语句
      • 4. 循环中的 else 块 (了解)
      • 总结
      • 练习题
      • 练习题答案
  • **创作不易,请大家点赞加收藏,关注我,持续更新教程!**

在之前的学习中,我们了解了 Python 的基本数据类型和运算符。然而,一个真正的程序不仅仅是按顺序执行一系列指令。我们需要能够根据不同的情况做出决策,或者重复执行某些任务。这就是 控制流程的作用。

本篇博客将深入讲解 Python 中用于控制流程的关键结构:条件语句 (if, elif, else) 用于决策,循环 (for, while) 用于重复,以及 循环控制 (break, continue) 用于微调循环行为。

1. 条件语句 (if, elif, else)

条件语句允许你根据一个或多个条件的真假来决定执行哪部分代码。Python 使用 ifelif(else if 的缩写)和 else 关键字来构建条件判断。

核心概念: Python 使用缩进来表示代码块的归属。每个条件语句(if, elif, else)后面都必须有一个冒号 :, 并且其下属于该条件的代码块必须进行相同的缩进

1.1 if 语句

if 语句是最简单的条件判断,如果条件为 True,就执行 if 后面的代码块。

age = 20
if age >= 18:print("你已经成年了。")print("可以进入。")
print("这是 if 语句外面的代码,总是会执行。")

输出:

你已经成年了。
可以进入。
这是 if 语句外面的代码,总是会执行。

如果 age 小于 18,if 后面的代码块就不会执行。

1.2 if…else 语句

if...else 语句提供了两个分支:如果 if 的条件为 True,执行 if 块;否则(即条件为 False),执行 else 块。

temperature = 25
if temperature > 30:print("天气很热!")
else:print("天气不错。")

输出:

天气不错。

如果 temperature 是 35,输出就会是 “天气很热!”。

1.3 if…elif…else 语句

elif(else if)用于检查多个条件。Python 会从上到下依次检查 ifelif 的条件。一旦找到一个条件为 True,就会执行相应的代码块,然后跳过剩余的 elifelse 块。只有当所有 ifelif 的条件都为 False 时,才会执行 else 块(如果存在的话)。

score = 85
if score >= 90:print("成绩优秀!")
elif score >= 80: # 如果上面的条件不成立,再检查这个条件print("成绩良好。")
elif score >= 60: # 如果上面的条件都不成立,再检查这个条件print("成绩及格。")
else: # 如果所有条件都不成立print("成绩不及格。")

输出:

成绩良好。

你可以有任意数量的 elif 块。else 块是可选的,最多只能有一个。

1.4 条件表达式的“真值”

回顾我们学过的布尔类型。在条件语句中,ifelif 后面的表达式会被 Python 解释为布尔值。还记得吗?0None、空字符串 ""、空列表 []、空字典 {}、空集合 set() 等都被视为 False (Falsy),其他大多数值都被视为 True (Truthy)。

my_list = []
if my_list: # 检查列表是否为空print("列表不为空")
else:print("列表为空")

输出:

列表为空
1.5 嵌套条件语句

条件语句可以嵌套。这意味着在一个 ifelse 块内部,可以包含另一个完整的条件语句。

is_authenticated = True
is_admin = Falseif is_authenticated:print("用户已登录。")if is_admin:print("欢迎,管理员!")else:print("欢迎,普通用户。")
else:print("请登录。")

输出:

用户已登录。
欢迎,普通用户。

2. 循环 (Loops)

循环用于重复执行一段代码。Python 提供了两种主要的循环结构:for 循环和 while 循环。

2.1 for 循环

for 循环用于遍历任何可迭代对象(如列表、元组、字符串、字典、集合等)中的元素。它会依次将可迭代对象中的每个元素赋值给循环变量,并执行循环体。

# 遍历列表
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:print(fruit)

输出:

apple
banana
cherry
# 遍历字符串
for char in "Python":print(char)

输出:

P
y
t
h
o
n
# 遍历字典 (默认遍历键)
person = {"name": "Alice", "age": 30, "city": "New York"}
for key in person:print(key) # 输出键print(person[key]) # 使用键访问值

输出(顺序可能不同):

name
Alice
age
30
city
New York

遍历字典的更常用方式: 使用 .keys() (遍历键)、.values() (遍历值) 或 .items() (遍历键值对元组)。

for key in person.keys(): # 遍历键print("键:", key)for value in person.values(): # 遍历值print("值:", value)for key, value in person.items(): # 遍历键值对元组print(f"键: {key}, 值: {value}")
2.2 range() 函数

range() 函数是一个非常常用的工具,用于生成一个整数序列,它经常与 for 循环一起使用,以便按指定次数循环。

range() 的用法:

  • range(stop): 生成从 0 到 stop-1 的整数序列。
  • range(start, stop): 生成从 startstop-1 的整数序列。
  • range(start, stop, step): 生成从 startstop-1 的整数序列,步长为 step
# 循环 5 次 (从 0 到 4)
for i in range(5):print(f"循环次数 (从0开始): {i}")

输出:

循环次数 (从0开始): 0
循环次数 (从0开始): 1
循环次数 (从0开始): 2
循环次数 (从0开始): 3
循环次数 (从0开始): 4
# 循环从 2 到 6 (不包含 7)
for i in range(2, 7):print(f"当前数字: {i}")

输出:

当前数字: 2
当前数字: 3
当前数字: 4
当前数字: 5
当前数字: 6
# 循环从 10 到 0 (不包含 -1),步长为 -2
for i in range(10, -1, -2):print(f"倒计数: {i}")

输出:

倒计数: 10
倒计数: 8
倒计数: 6
倒计数: 4
倒计数: 2
倒计数: 0
2.3 while 循环

while 循环会在指定的条件为 True 时重复执行代码块。它会先检查条件,如果为 True,则执行循环体,然后再次检查条件,直到条件变为 False

count = 0
while count < 5:print(f"计数: {count}")count += 1 # 每次循环后递增计数器
print("循环结束。")

输出:

计数: 0
计数: 1
计数: 2
计数: 3
计数: 4
循环结束。

重要:while 循环中,务必确保循环体内部会改变某些条件,使得循环条件最终能变为 False,否则会导致无限循环

# 这是一个无限循环的例子 (请小心运行或避免运行)
# i = 0
# while i < 5:
#     print("我会永远打印这句话!")
#     # i 没有改变,条件永远为 True
# 要停止无限循环,通常在终端按 Ctrl+C

何时使用 for vs while?

  • 如果你知道需要遍历一个序列或按照固定次数重复,通常使用 for 循环 (确定次数循环)。
  • 如果你需要在某个条件保持 True 时重复执行,而你不知道具体需要循环多少次,通常使用 while 循环 (不确定次数循环)。

3. 循环控制 (break, continue)

breakcontinue 语句可以改变循环的正常执行流程。

3.1 break 语句

break 语句会立即终止最内层的循环(forwhile),并跳出循环体,继续执行循环后面的代码。

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
for num in numbers:if num == 5:print("找到 5 了,退出循环!")break # 找到 5 后立即退出 for 循环print(f"当前数字: {num}")
print("循环外的代码")

输出:

当前数字: 1
当前数字: 2
当前数字: 3
当前数字: 4
找到 5 了,退出循环!
循环外的代码
3.2 continue 语句

continue 语句会跳过当前循环的剩余代码,直接进入下一次迭代。

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
for num in numbers:if num % 2 == 0: # 如果是偶数print(f"跳过偶数: {num}")continue # 跳过当前迭代的剩余部分,进入下一次循环print(f"当前是奇数,处理: {num}")
print("循环结束。")

输出:

当前是奇数,处理: 1
跳过偶数: 2
当前是奇数,处理: 3
跳过偶数: 4
当前是奇数,处理: 5
跳过偶数: 6
当前是奇数,处理: 7
跳过偶数: 8
当前是奇数,处理: 9
循环结束。

4. 循环中的 else 块 (了解)

for 循环和 while 循环都可以有一个可选的 else 块。这个 else 块会在循环正常完成(即没有遇到 break 语句)时执行。

# for 循环的 else
for i in range(3):print(f"Loop {i}")
else:print("循环正常结束。") # 循环完整执行,没有 break

输出:

Loop 0
Loop 1
Loop 2
循环正常结束。
# 带有 break 的 for 循环的 else
for i in range(5):if i == 2:print("遇到 break")breakprint(f"Loop {i}")
else:print("循环正常结束。") # 不会执行,因为遇到了 break

输出:

Loop 0
Loop 1
遇到 break

while 循环的 else 块工作方式类似。这个特性在查找元素或验证循环是否完全遍历时可能有用。

总结

控制流程是构建动态程序的基础。我们学习了:

  • 条件语句 (if, elif, else):根据条件执行不同的代码分支。
  • 循环 (for, while):重复执行代码块。
  • range() 函数:配合 for 循环生成数字序列进行计数。
  • 循环控制 (break, continue):改变循环的正常执行流程。
  • 了解了循环可选的 else 块。

掌握这些结构,你就可以编写出能够响应不同情况并处理重复任务的更复杂的程序了。

练习题

尝试独立完成以下练习题,并通过答案进行对照:

  1. 条件语句:

    • 编写一个程序,接收用户输入一个数字,判断它是正数、负数还是零,并打印相应信息。
    • 编写一个程序,接收用户输入一个年份,判断它是否是闰年(能被 4 整除但不能被 100 整除,或者能被 400 整除),并打印结果。
  2. for 循环:

    • 使用 for 循环遍历字符串 “Programming is fun!”,并打印出每个字符。
    • 创建一个列表 numbers = [10, 20, 30, 40, 50],使用 for 循环遍历并打印出列表中的每一个数字。
    • 使用 for 循环和 range() 函数打印从 1 到 10 的所有数字。
    • 使用 for 循环和 range() 函数打印从 10 到 1 的所有数字。
  3. while 循环:

    • 使用 while 循环计算并打印从 1 加到 100 的总和。
    • 编写一个 while 循环,模拟一个简单的猜数字游戏:程序预设一个数字(例如 secret_number = 7),让用户不断输入猜测的数字,直到猜对为止。每猜测一次,提示是“猜大了”、“猜小了”还是“猜对了”。
  4. 循环控制 (break, continue):

    • 使用 for 循环遍历一个数字列表,当遇到数字 7 时,打印“找到 7,退出循环”,然后使用 break 立即停止循环。
    • 使用 for 循环遍历从 1 到 20 的数字,但跳过所有能被 3 整除的数字,只打印其他数字。
  5. 综合应用:

    • 创建一个包含学生分数的列表。使用 for 循环和 if 语句,统计有多少个分数是及格的(假设 60 分及格)。
    • 编写一个程序,接收用户输入一个正整数 n,使用 while 循环计算 n 的阶乘(n! = n * (n-1) * … * 1)。

练习题答案

1. 条件语句:

# 1.1 判断正负零
num = float(input("请输入一个数字: "))
if num > 0:print("这是一个正数。")
elif num < 0:print("这是一个负数。")
else:print("这是零。")# 1.2 判断闰年
year = int(input("请输入一个年份: "))
if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):print(f"{year} 年是闰年。")
else:print(f"{year} 年不是闰年。")

2. for 循环:

# 2.1 遍历字符串
my_string = "Programming is fun!"
for char in my_string:print(char)# 2.2 遍历列表
numbers = [10, 20, 30, 40, 50]
for num in numbers:print(num)# 2.3 打印 1 到 10
for i in range(1, 11): # range(start, stop) 包含 start,不包含 stopprint(i)# 2.4 打印 10 到 1
for i in range(10, 0, -1): # range(start, stop, step) 步长为 -1print(i)

3. while 循环:

# 3.1 计算 1 加到 100 的总和
total = 0
count = 1
while count <= 100:total += countcount += 1
print(f"1 加到 100 的总和是: {total}")# 3.2 猜数字游戏
import random # 导入 random 模块以生成随机数secret_number = random.randint(1, 100) # 生成 1 到 100 之间的随机整数
guess = 0 # 初始化猜测数字
print("欢迎来到猜数字游戏!我已经想好了一个 1 到 100 之间的数字。")while guess != secret_number:try:guess = int(input("请输入你的猜测: "))if guess > secret_number:print("猜大了,再试试!")elif guess < secret_number:print("猜小了,再试试!")else:print("恭喜你,猜对了!")except ValueError:print("无效输入,请输入一个整数。")print("游戏结束。")

4. 循环控制 (break, continue):

# 4.1 使用 break 查找并退出
number_list = [1, 3, 5, 7, 9, 11]
for num in number_list:if num == 7:print("找到 7,退出循环")break # 立即终止循环print(f"当前数字: {num}")
print("break 后的代码")# 4.2 使用 continue 跳过能被 3 整除的数字
for i in range(1, 21): # 从 1 到 20if i % 3 == 0: # 如果能被 3 整除continue # 跳过当前循环的剩余部分,直接进入下一轮迭代print(f"打印数字: {i}") # 只有不能被 3 整除的数字会执行到这里
print("continue 后的代码")

5. 综合应用:

# 5.1 统计及格分数
student_scores = [75, 58, 90, 60, 45, 88, 59, 72]
passing_score = 60
passed_count = 0for score in student_scores:if score >= passing_score:passed_count += 1print(f"总共有 {len(student_scores)} 个学生分数。")
print(f"其中有 {passed_count} 个分数达到或超过 {passing_score} 分。")# 5.2 计算阶乘
n = int(input("请输入一个正整数计算阶乘: "))if n < 0:print("负数没有阶乘。")
elif n == 0:print("0 的阶乘是 1。")
else:factorial = 1count = nwhile count > 0:factorial *= countcount -= 1print(f"{n} 的阶乘是 {factorial}")

创作不易,请大家点赞加收藏,关注我,持续更新教程!

http://www.dtcms.com/wzjs/128215.html

相关文章:

  • 网站建设系统服务鞍山seo外包
  • 怎么做淘宝联盟网站今日军事新闻头条新闻
  • 域名备案掉了网站还可以用吗北京做的好的seo公司
  • 大数据新闻网站怎么做如何优化seo技巧
  • 陕西找人做网站多少钱青岛seo建站
  • 建设局网站怎么在百度做宣传广告
  • 南昌营销型网站建设查图百度识图
  • 网站建设系统总体结构功能图h5下一页
  • 广州市建设招标管理办公室网站哪些平台可以做推广
  • 经典网站案例郑州高端网站建设哪家好
  • 免费建网站平台教seo标题优化是什么意思
  • wordpress破解模板保定seo推广公司
  • 成都网站制作工作室网页优化怎么做
  • wordpress 301 https江北seo
  • 龙信建设集团有限公司网站石家庄百度关键词优化
  • 西安网站建设哪家强广州新闻报道
  • 机械产品做哪个网站宁波 seo整体优化
  • 做网站选哪家公司线上宣传渠道
  • 汕头中文建站模板汕头seo代理商
  • java 做直播网站seo一般包括哪些内容
  • 自适应 网站开发百度手机浏览器
  • 湖南网站建站系统哪家好南宁seo公司
  • 吉林省建设工程质监站网站2023最火的十大新闻
  • 自己做个网站需要什么长沙h5网站建设
  • 前端网站开发实例网络营销的方法包括哪些
  • 上海市网站开发公司排名百度指数人群画像哪里查询
  • 教务管理网站开发站长工具下载app
  • 可视化建站网站源码网络推广什么做
  • 让做网站策划没经验怎么办舆情监测软件免费版
  • dw网站首页制作江西网络推广seo