粉丝73获赞448

欢迎回到 python 零基础入门课 python 基础一共十五课,今天是第三课的第二部分, if 条件语句。开始前,照例先领本节的通关线索。这一页建议你暂停看一下,把这几个问题装进脑子里,再去听课,效率绝对翻倍。记住这些核心线索,现在进入正题。在 python 里, if 条件语句就像是一座有着严格门禁的庄园。首先是大门,也就是 if 条件这一行, 这里站着一位门卫,他的任务就是核验你手中的通行证,也就是那个条件表达式是 true 还是 false。 然后是专属领地,也就是下面这些缩进的代码。只有当门卫放行,也就是条件为 true 时, python 才会进入这块领地执行代码,否则才会直接绕过这块区域继续往下走。举两个具体的例子, 比如第一种情况,二十岁大于等于十八,通行证有效,所以 python 顺利进入庄园,打印出了欢迎进入。而第二种情况,年龄十五岁,条件不满足,门卫直接拦下 python, 跳过了缩进的代码块,只打印了最后那句,安检结束。这里有一个核心点,必须记住, 缩进是 python 识别领地范围的唯一方式,千万别写歪了。有了这个强大的工具,我们的加法计算器终于可以升级了。逻辑很简单,第一步照常获取两个数字。第二步关键来了,让用户输入运算符号, 比如加号、减号、乘号或除号。第三步,写下这个 if 语句,如果 o p 等于加,就执行加法计算。 我们运行验证一下,输入十二十,再输入一个加号,程序精准的识别了符号,并给出了结果三十。既然加法能行,那其他运算也不在话下,只需要多复制几份,分别判断减号、乘号和除号,这样一个全功能的四则运算计算器就诞生了。但是这种写法真的完美吗?思考一个问题, 当用户输入加号时,程序执行了第一个加法判断,这没问题,但在那之后, python 还会傻乎乎的去检查后面是不是减号, 是不是乘号,是不是除号。虽然结果没错,但这带来了两个问题,第一,浪费资源,明明已经找到答案了,为什么还要继续找?第二,语义不清晰。这四个条件其实是互斥的,就像选择题的四个选项,你只能选一个,但写成四个独立的 if, 看起来就像是多选择题。 那么有没有一种机制能告诉 python, 只要找到一个对的,剩下的就别看了?当然有,这就是 if l 幺 e s 结构 a life 的 意思就是,否则如果对比一下这两种写法, 如果是四个独立的 if, python 必须把每一行都跑一遍,就像一个强迫症患者。而用了 i live, 一 旦第一个条件满足了, python 就 会立刻跳过后面所有的检查,这不仅效率更高,而且逻辑非常清晰,这就是一个标准的多选一。 最后,如果你的选择题只有两个选项,比如说是或否,那连 els 都不需要了,直接用最简单的 ifelse 结构,如果条件成立,走这条路,否则走那条路。这就是编程中最常用的决策逻辑, 掌握了它,你的程序就真正拥有了智能。虽然我们的计算器现在能跑能算,看起来很完美,但其实它还藏着一个致命的隐患,如果用户在做除法时不小心输入了零,程序会立刻崩溃。下一节我们就来学习如何给计算器装上防弹衣,让它能够优雅的处理这些意外错误。 好知识点讲完了,但光听懂了还不够,能输出才是真学会。现在点击底下拍 buddy 这个机器人,用你自己的大白话把刚才的领取的线索回答清楚,然后点击提交测评,让 ai 看看你的笔记到底对不对,别偷懒,现在就去试试。

在 c r 加中格式化输出,我们用的是 print f, 它的功能就是格式化输出任意数据列表,它的一般格式就是 print f 双引号格式控制字母串,然后是输出列表,这里呢,格式也就选双引号里边的格式就是百分号宽度, 然后是精度,前面有一个点,注意一下数据类型控制符,这里说明一下。第一点,宽度通常叫做长宽,也就让该数据占几位省略,不写的话就是你的数据是几位宽度,就输出几位宽度。打个比方,什么叫长宽呢?比如说零三, 那么他就是两位宽度,对不对?一二三,那么他就是相当于是三个位置,对不对,就是长宽,就是三二点精度,这个呢,点精度表示涉及到尾数的时候,题目中很可能要求让你保留小数点,后边保留几位,也就是用到这些。 第三点,常用的数据类型,这里有个数据类型控制符,那么常用的数据类型对应的控制符分几点,大家必须要背过。第一,百分号 d 表示的是 int 类型的整数。 第二点,百分号 lld 表示的是 lld 类型的整数,百分 f 是 float 类型百分号, lf 是 double 百分二。 c 指的是叉。四点实数列表是需要输出的一组数据,可以是表达式或者变量,并且和参数之间要用一个逗号给它分开。 第五,要求格式双明和各数项在数量和类型上一一对应,则会出现意想不到错误。那什么意思呢?我们举个例子,你说 a 不 认得 f 百分冒点三,那什么意思啊?就是保留小数点后边三位,小数点后面要保留三位,那么 l f 就是 double 的 格式 输出,那么再看一个 int a b 我 们现在呢? int f 百分二三 d 百分二三 d a b 首先我们看一下嗝 d 这个就是 int 的 类型对不对?那么三 d d 前面有三,就是就让你在输出的时候保留三位场宽,记得点赞关注哦!

前面说了, print 是 python 里用来做输出的,有输出就一定有输入,所以就有了 input, 它就是用来接收输入的函数, 括号里可以写提示内容,比如请输入邮箱,然后用一个变量来接收用户输入的内容。这个引 ml 是 字幕串,我们可以用 find 去找一下 app, 得到它在字幕串里的位置。接下来就能用上节可讲的字幕格式化,把信息打印出来。你的邮箱用户名为, 用引流切片切到 index, 然后你的邮箱类型为,从 index 加一开始切到末尾来跑一下,程序会提示我们请输入邮箱,那我就输入我的邮箱, 确定就拿到了邮箱用户名和邮箱类型。但有可能用户输入的邮箱不一定是对的,所以我们基于这个代码来做一个补充,通过 e f 来验证邮箱格式。 如果 index 等于负一,就说明没找到 it 格式肯定不对。这时候我们就打印一句友乡,格式不正确。注意在 python 里, if 后面的条件不需要括号,代码块也不用大括号,而是用冒号加缩进来表示成绩结构,然后 else 就 正常输出。 还有就是统一级的代码块,缩进必须统一,否则会报语法错误。编辑器一般会给你一个红色波浪线,非常醒目。来跑一下吧,你会看到一个很典型的报错, indentation arrow 缩进错误,这是新手很容易遇到的,看不懂没关系,翻译工具用起来。我用的这个叫 o 路词典, 他说缩进错误,意外地缩进在第五行 print 这里,把缩进对齐就好了,输入正确的有效, 没问题。再来跑一次,输入错误的邮箱就提示了邮箱不正确。刚才是单 if, 再来看多 if 的 写法,这里我们可以继续判断,在 python 里面没有 else if 而是简化成了 l if。 如果 index 等于零,说明 it 在 开头,就提示不能以 it 开头。 再来一个要 if index 等于一秒的长度减一,说明 at, 在 最后就提示不能以 at 结尾来跑一下,我故意输一个 at 开头的,再来一个 at 结尾的,就都被拦截了。最后我们来看 if 的 嵌套结构,比如说我们提示用户输入一个数字, input 拿到的是四个串,那就用类型加括号对它做一个转换, 现在它就变成数字了,是数字就可以用它进行运算了。如果它除以二的余数等于零,说明它能被二整除。然后继续判断,如果它除以三的余数也等于零,那我们就打印一句,零输入的数字可以被二和三整除,然后 else 就 只能被二整除。 如果第一层判断没过,本身不能被二整除,那就进入外层的 a s 继续判断,如果除以三的余数等于零,说明它只能被三整除。最后 a s 不 能被二和三整除,那跑一下 没有问题。再来一个四只能被二整除,六呢,可以被二和三整除,五就都不能整除。

大家好,今天学习第三十九节 if 条件判断语句以及常量变量的真假。我们先来看一下 if 语句的格式, if 就是 如果的意思,如果条件是真的,那么就执行大括号里的语句, 接着再执行括号外的语句。如果条件是假的,那么就会跳过大括号里的语句,接着执行括号外的语句,这就是一副语句的执行顺序。我们再来说一下这里的条件, 条件就是判断一个事件的真和假,真和假我们用数字量来表示,就是用零和一来表示, 他不是。像我们前面学的加减乘除计算,会得到一个具体的结果,这里是对事件进行判断,判断事件的真和假,也就是得到一个逻辑值,零和幺。我们再来看一下什么是真的,什么是假的。 如果条件是一个数字或者是变量,非零即真。如果这个数字量是零,那么就是假的, 其他的数字量都是真的。 e 负二十五,条件是二十五,是一个数字量,非零即真,那么它是真的,就会执行大括号里的语句。接着执行括号外的语句, 将负的二十五复制给 a, e 负 a, a 是 一个数字,量,是负的。二十五非零是真,那么条件是真的,就会执行大括号里的语句。接着执行括号外的语句, 将零复制给 a, 赋 a, 那 么 a 是 零。条件是假的,就会跳过大括号里的语句,接着执行括号外的语句。 这里我们介绍 if 的 条件是一个数字量的时候,非零即真,那么其他的条件判断我们后面再讲。再来看一下 if 语句,省略大括号。 if 条件,如果条件是真的,就会执行语句 e, 接着执行下面的语句。如果条件是假的,就会跳过大括号,接着执行下面的语句。当大括号里只有一条语句的时候,可以省略大括号, 它的用法还是一样的。如果条件是真的,就会执行语句一,接着执行下面的语句。 如果条件是假的,就会跳过语句一,接着执行下面的语句。我们注意,当大括号里只有一条语句的时候,才可以省略大括号。如果像这里有两条语句,他在省略大括号的话,他就会发生错误。我们来看一下, 如果条件是真的,就会执行语句一和语句二,接着再执行语句三和语句四。如果条件是假的,就会跳过大括号,然后执行括号外的语句。 如果省略了大括号,异副。条件是真的,就会执行语句一,接着执行其他的语句。如果条件是假的,就会跳过语句一,接着执行其他的语句。那么这里根据条件的判断,所执行的语句是不一样的。 一个执行了语句一和语句二,一个只执行了语句一。我们注意这里有一个分号,我们说一个分号代表一条语句的结束,这个分号是和 if 是 连在一起的,那么它们是一条完整的语句。 这里的分号是语句二,代表语句二的结束。语句二和上面是完全独立分开的。我们再来看一下一种特殊的写法,但是这种写法没有什么意义,一符条件直接是一个分号,表明一条语句的结束, 也就是相当于 if 条件后面执行了一条空语句。如果条件是真的,就执行这条空语句,接着执行下面的语句,如果条件是假的,就会跳过这条空语句,接着执行下面的语句。我们知道空语句是什么都没有做, 跳过空语句实际上也是什么都没有做,那么无论条件是真的还是假的,他们执行的语句都是一样的,所以说这个异副语句就完全失去了条件控制的意义。