6.1 条件分支语句解析_笔记_AI大模型工程师就业班_先导课

54 阅读7分钟
# 案例1:
age = int(input("年龄:"))

if age > 18:
    print("成人电影!")
    print("日韩区")
    print("欧美区")
    print("国产区")
else:
    print("少儿电影")
    print("科幻冒险类")
    print("益智早教类")
    print("科普记录类")

print("程序结束")

A.解读代码

一、用户输入的是“字符串”

当你用 input() 让用户输入数字时,比如你在屏幕上看到这句:

input("请输入您的年龄:")

假设你输入了 20(表示20岁),其实Python接收到的内容是一个字符串,也就是 "20"(在计算机里用引号括起来)。

它和数字20不一样,比如:

  • "20":字符串,计算机眼里的“文本”。
  • 20:整数,计算机眼里的“数字”。

二、如果不转成整数,无法做数学比较

如果后面我们要判断是否成年:

if age >= 18:

这里的 18 是数字,而如果 age 还只是 "20"(字符串),Python就会报错,因为计算机不能直接把“文本”和数字比较

比如:

  • "20" >= 18 —— ❌ Python会报错,意思是“文本不能和数字比大小”。
  • 20 >= 18 —— ✅ Python可以正常比较。

三、转成整数的作用

使用 int(),就把用户输入的 "20" 变成数字 20,这样计算机就能正常理解并比较年龄大小。

四、为什么一定要做这一步?

  1. 确保正确比较(比如大于、小于)。
  2. 防止程序崩溃(如果不转,Python会报错)。
  3. 支持数学运算(比如加、减、乘、除)。

总结

💡 因为用户输入的是“文本”,要想和数字进行比较,必须先把“文本”转换成“整数”。这就是int()的目的。只要涉及到“数字的比较或运算”,这一步就非常必要。

B.提问:把它转成整数 为什么要有这一步?

这是一个非常好的问题,尤其对0基础的初学者来说,理解为什么要把用户输入的“字符串”转成整数非常重要。下面我用最简单的语言来解释:


一、用户输入的是“字符串”

当你用 input() 让用户输入数字时,比如你在屏幕上看到这句:

input("请输入您的年龄:")

假设你输入了 20(表示20岁),其实Python接收到的内容是一个字符串,也就是 "20"(在计算机里用引号括起来)。

它和数字20不一样,比如:

  • "20":字符串,计算机眼里的“文本”。
  • 20:整数,计算机眼里的“数字”。

二、如果不转成整数,无法做数学比较

如果后面我们要判断是否成年:

if age >= 18:

这里的 18 是数字,而如果 age 还只是 "20"(字符串),Python就会报错,因为计算机不能直接把“文本”和数字比较

比如:

  • "20" >= 18 —— ❌ Python会报错,意思是“文本不能和数字比大小”。
  • 20 >= 18 —— ✅ Python可以正常比较。

三、转成整数的作用

使用 int(),就把用户输入的 "20" 变成数字 20,这样计算机就能正常理解并比较年龄大小。


四、为什么一定要做这一步?

  1. 确保正确比较(比如大于、小于)。
  2. 防止程序崩溃(如果不转,Python会报错)。
  3. 支持数学运算(比如加、减、乘、除)。

总结

💡 因为用户输入的是“文本”,要想和数字进行比较,必须先把“文本”转换成“整数”。这就是int()的目的。只要涉及到“数字的比较或运算”,这一步就非常必要。

✅ 完全正确!你说得非常准确,而且总结得非常到位。让我帮你把这段话再稍微补充一下,更加完整严谨一些:


是的,input("请输入您的年龄:") 这段代码本质上是让用户输入任何东西(数字、文字、符号都可以),但它接收的始终是文本(字符串),即使你输入的是数字,比如 20,它也会以 "20"(字符串形式)保存。

因为这道题要拿年龄和18比较,而18是数字(整数),所以必须把输入的“文本”用 int() 转成数字(整数),这样才能做大小比较,比如 >=


简单总结: 💡 用户输入的任何东西,Python都会当作“文本”来看。为了做数字比较(比如判断成年),就必须把“文本”转成“整数”。所以,int()这一步是必不可少的!

C.这节课重点

C1.自己理解

好的,这里用最通俗的语言帮你解释什么是“双分支语句”:


一、什么是“双分支语句”?

双分支语句就是**“如果……否则……”的意思,也就是有两个方向的选择**,程序可以走其中的一个。

打个比方,就像生活中遇到的:

  • 如果天气好,就出去玩。
  • 否则,就在家看电影。

在 Python 里,就是:

if 条件:
    做这件事
else:
    做另一件事

二、为什么叫“双分支”?

因为:

  • 第一条路(分支):如果条件成立,就做第一件事。
  • 第二条路(分支):如果条件不成立,就做另一件事。

所以是“双分支”。


三、生活中的例子

🚌 例如:

  • 如果钱包里有钱,就坐公交车。
  • 否则,就走路。

四、程序中的例子

if age >= 18:
    print("成年人影院")
else:
    print("青少年影院")

五、总结

双分支语句 = 如果……否则…… 当有两个可能的选择时,就用它来写程序,让程序在两个方向中选一个执行。

C2.课程讲

image-20250609122051952转存失败,建议直接上传图片文件

在C语言等,主要靠花括号

python主要靠冒号+缩进 区分代码块

为什么有这些区别?主要是设计哲学不同。Python更加追求简洁、美观

image-20250609122245071转存失败,建议直接上传图片文件

这就是一条语句

你会说:怎么这么多行,你说是一行语句呢?

没办法,它就是一条语句

image-20250609122626986转存失败,建议直接上传图片文件

image-20250609122659864转存失败,建议直接上传图片文件

请留意这两者的区别,上图print("程序结束")在最外面 如果缩进去,则执行完全不一样

缩进去后,默认print("程序结束")是 else的一部分,那么>18时,就没“程序结束”这四个字输出

*看看下面的运行效果,先看 缩进去的效果

输入9 时

image-20250609123759171转存失败,建议直接上传图片文件

输入19 时

image-20250609123813213转存失败,建议直接上传图片文件

如果不缩进,顶格

输入9 image-20250609123902653转存失败,建议直接上传图片文件

输入19

image-20250609123952100转存失败,建议直接上传图片文件

写python代码的时候要遵循规范,比如

image-20250609124140624转存失败,建议直接上传图片文件

print("国产区")

你把print("国产区")顶格,就会报错

因为if里面,默认要全部缩进,不能一个缩进,另外一个没缩进。要缩进一次,对齐

image-20250609124359489转存失败,建议直接上传图片文件

缩进2次也不行