Python 零基础入门——基础语法(二)

在 Python 基础语法(一)中,我们学习了变量、类型、运算符与输入输出。本篇将带你进入流程控制的世界,学习如何让代码根据条件执行、重复执行,实现更复杂的逻辑。

顺序语句

Python 代码默认是从上到下、逐行执行 的,这种执行方式就是顺序语句

复制代码
print("first")
print("second")
print("third")

运行结果

这是最基础的执行流程,所有代码都会按书写顺序依次执行。

条件语句

什么是条件语句?

条件语句(也叫分支语句)可以让程序根据不同的条件,选择执行不同的代码块,实现 "判断 - 选择" 的逻辑。

生活中的例子:

  • 如果明天下雨,就带伞;否则,就不带伞。
  • 如果考试分数大于等于 60,就及格;否则,就不及格。

语法格式

Python 中使用 ifelifelse 关键字来实现条件判断。

单分支

python 复制代码
if 条件:
    条件满足时执行的代码

双分支

python 复制代码
if 条件:
    条件满足时执行的代码
else:
    条件不满足时执行的代码

多分支

python 复制代码
if 条件1:
    条件1满足时执行的代码
elif 条件2:
    条件2满足时执行的代码
elif 条件3:
    条件3满足时执行的代码
else:
    所有条件都不满足时执行的代码

示例

python 复制代码
score = 85
if score >= 90 :
    print('优秀')
elif score >= 80 :
    print('良好')
elif score >= 60 :
    print('及格')
else :
    print('不及格')

输出:良好

缩进和代码块

Python 中没有大括号 {} ,使用缩进(通常是 4 个空格)来划分代码块。

  • 同一缩进级别的代码属于同一个代码块。
  • 缩进错误会直接导致语法报错。
python 复制代码
if 5 > 3:
    print("条件满足")  # 缩进 4 个空格,属于 if 代码块
    print("继续执行")
print("这行不属于 if 代码块")

⚠️ 注意:不要混用 Tab 和空格,推荐统一使用 4 个空格缩进。

示例:判断闰年

输入一个年份,判断是否为闰年。

  • 闰年规则:能被 4 整除但不能被 100 整除,或者能被 400 整除。
python 复制代码
year = int(input('请输入年份 : '))
if year % 4 == 0 and year % 100 != 0 or year % 400 == 0:
    print(f'{year} 是闰年')
else :
    print(f'{year} 不是闰年')

空语句 pass

这里 if 后需要一个语句,如果没有就会报错:

但暂时不想写逻辑时,可以使用 pass 作为占位符,避免语法错误。

python 复制代码
a = 10
if a % 2 == 0:
    pass
else:
    print(a)

循环语句

循环语句可以让一段代码重复执行多次,是实现批量处理、迭代计算的核心。

while 循环

while 循环会在条件满足时,重复执行代码块。

python 复制代码
while 条件:
    循环体代码

示例:求 1 到 10的和并输出

python 复制代码
s = 0
i = 1
while i <= 10:
    s += i
    i += 1
print(f'sum = {s}')

⚠️ 注意 :必须在循环体内修改条件,否则会造成无限循环(死循环)。

for 循环

for 循环更常用于遍历可迭代对象(如列表、字符串、范围等),是 Python 中更常用的循环方式。

python 复制代码
for 变量 in 可迭代对象:
    循环体代码

可迭代对象

简单来说就是:就是可以被 for 循环依次遍历、一个一个取出来的对象

常见的可迭代对象:strlisttupledictsetrange()生成的范围对象

这里使用 range(begin,end)返回值([begin,end))作为 for 循环当中的可迭代对象即可。

示例:使用 for 输出 1 到 10

python 复制代码
for i in range(1,11):
    print(i)

示例:遍历字符串

python 复制代码
s = 'hello world'
for ch in s:
    print(ch)

continue

continue 用于跳过本次循环剩余的代码,直接进入下一次循环

示例:打印 1 到 10 之间的奇数

python 复制代码
for i in range(1,11):
    if i % 2 == 0:
        continue # 偶数跳过
    print(i)

break

break 用于立即终止整个循环,跳出循环体。

示例:找到 10 以内第一个大于 5 的数

python 复制代码
for i in range(1,11):
    if i > 5:
        print(i)
        break  # 跳出循环

实践练习:人生重开模拟器

学完流程控制的核心知识点后,这里通过一个简单又有趣的实战案例,巩固 while 循环、if/elif/else 多分支、break/continue 及输入输出的综合用法

python 复制代码
import random
import time

print("=" * 30)
print("     人生重开模拟器")
print("=" * 30)
print("=====请输入初始属性=====")
# 输入初始属性 智力、体力、家境、外貌
intel = 0
strength = 0
family = 0
beauty = 0
while True:
    intel = int(input('请输入智力(1-10) #'))
    if intel < 0 or intel > 10:
        print("输出错误,请重新输入")
        continue
    strength = int(input('请输入体力(1-10) #'))
    if strength < 0 or strength > 10:
        print("输出错误,请重新输入")
        continue
    family = int(input('请输入家境(1-10) #'))
    if family < 0 or family > 10:
        print("输出错误,请重新输入")
        continue
    beauty = int(input('请输入魅力(1-10) #'))
    if beauty < 0 or beauty > 10:
        print("输出错误,请重新输入")
        continue
    if intel + strength + family + beauty > 40:
        print("输出错误,请重新输入")
        continue
    break
age = 0
while True:
    print(f"\n----- 当前年龄:{age} 岁 -----")
    print(f"当前属性值 智力:{intel}  体力:{strength}  家境:{family}  魅力:{beauty}")

    # 任意属性过低,人生提前结束
    if intel <= 0 or strength <= 0 or family <= 0 or beauty <= 0:
        print("你的人生属性过低,提前落幕。")
        break

    #活到30岁,青年阶段结束
    if age >= 30:
        print("你已步入而立之年,1~30岁人生阶段圆满结束!")
        break
    # 年龄增长
    age += 1

    # 随机事件 1~12种事件
    event = random.randint(1, 12)

    if age <= 6:  # 0~6岁 幼儿时期
        if event == 1:
            intel += 2
            print("你很早就学会说话识字,智力+2")
        elif event == 2:
            strength += 2
            print("你很少生病,体质越来越好,体力+2")
        elif event == 3:
            beauty += 1
            print("你长得特别可爱,邻里都夸好看,魅力+1")
        elif event == 4:
            family += 1
            print("家里生意兴隆,家境+1")
        elif event == 5:
            intel += 1
            beauty += 1
            print("你被夸聪明又好看,智力+1、魅力+1")
        elif event == 6:
            strength += 1
            family += 1
            print("家人精心照顾,体力+1、家境+1")
        else:
            print("平安健康地度过了一年。")

    elif age <= 12:  # 7~12岁 童年时期
        if event == 1:
            intel += 2
            print("期末考试名列前茅,智力+2")
        elif event == 2:
            strength += 2
            print("运动会拿奖,坚持锻炼,体力+2")
        elif event == 3:
            beauty += 1
            print("越长越好看,魅力+1")
        elif event == 4:
            family += 2
            print("家里条件大幅提升,家境+2")
        elif event == 5:
            intel -= 1
            print("沉迷动画片,不爱学习,智力-1")
        elif event == 6:
            strength -= 1
            print("经常挑食,体质变差,体力-1")
        elif event == 7:
            family += 1
            intel += 1
            print("家人送你上兴趣班,智力+1、家境+1")
        else:
            print("平平淡淡的一年,快乐成长。")
    elif age <= 18:  # 13~18岁 青少年时期(中学阶段)
        if event == 1:
            intel += 3
            print("埋头刷题备考,成绩突飞猛进,智力+3")
        elif event == 2:
            beauty += 2
            print("青春期颜值飙升,成为众人焦点,外貌+2")
        elif event == 3:
            family += 2
            print("家里投资成功,家境+2")
        elif event == 4:
            strength += 2
            print("坚持晨跑,体力+2")
        elif event == 5:
            intel -= 1
            beauty -= 1
            print("熬夜玩手机、打游戏,智力-1、外貌-1")
        elif event == 6:
            strength -= 1
            print("缺乏锻炼,经常久坐,体力-1")
        elif event == 7:
            intel += 1
            strength -= 1
            print("埋头学习忽略运动,智力+1、体力-1")
        elif event == 8:
            beauty += 1
            family += 1
            print("家人给你买新衣服,外貌+1、家境+1")
        else:
            print("安稳度过中学时光,没有太大波澜。")

    else:  # 19~30岁 青年时期(大学/工作)
        if event == 1:
            intel += 2
            family += 2
            print("努力提升工作能力,升职加薪,智力+2、家境+2")
        elif event == 2:
            family += 3
            print("创业/投资成功,家境+3")
        elif event == 3:
            beauty += 1
            print("注重穿搭和护肤,外貌+1")
        elif event == 4:
            strength -= 1
            intel += 2
            print("拼命加班赶项目,体力-1、智力+2")
        elif event == 5:
            beauty -= 1
            strength -= 1
            print("工作压力大、作息不规律,外貌-1、体力-1")
        elif event == 6:
            family -= 1
            print("日常开销过大,家境-1")
        elif event == 7:
            intel += 1
            beauty += 1
            print("坚持学习健身,智力+1、外貌+1")
        elif event == 8:
            family += 2
            beauty += 1
            print("社交顺利,结识贵人,家境+2、外貌+1")
        elif event == 9:
            strength += 1
            family += 1
            print("周末健身、兼职,体力+1、家境+1")
        else:
            print("平淡的一年,稳步前行,没有太大变化。")
    time.sleep(1)

上述代码中使用了randomtime 模块

random

用于生成随机数,实现随机事件、随机属性。

  • random.randint(a, b):生成一个 [a, b] 范围内的整数

time

用于让程序暂停一段时间(休眠),使人生模拟更有节奏。

  • time.sleep(秒数):程序暂停指定秒数

本篇文章到这里就结束了,感谢支持

我的博客即将同步至腾讯云开发者社区 ,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=2oul0hvapjsws

相关推荐
YSyuanshuo2 小时前
2026滴鸡精品牌指南:羽本元如何用技术革新挑战传统老牌?
大数据·python
~plus~2 小时前
C# 内存管理深度剖析:从 Span<T> 到 Memory<T> 再到 ArrayPool
开发语言·c#
计算机安禾2 小时前
【数据结构与算法】第43篇:Trie树(前缀树/字典树)
c语言·开发语言·矩阵·排序算法·深度优先·图论·宽度优先
用户8356290780512 小时前
Python 实现 Word 页眉页脚添加与自定义设置
后端·python
cici158742 小时前
C#与西门子S7-1200通讯实例
开发语言·c#
~plus~2 小时前
C# 异步编程深度剖析:从 async/await 到 ValueTask
开发语言·c#
北漂Zachary2 小时前
Laravel 7.x 新特性全解析
android
回忆2012初秋2 小时前
C# 大文件分片上传完整实现指南
开发语言·c#
yanghuashuiyue2 小时前
langchain AI应用框架研究【前端-篇二】
人工智能·python·langchain