<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg>
讯享网
Python:
讯享网
以上程序虽然可以按照上图完成程序的正常输出,但是遗留了一个非常严重的问题:这个价格price变量无法参与数学运算(如买了两个奥利奥,应该是18.5 * 2),原因在于input()方法返回的所有的结果都是str字符串类型。
怎么解决以上问题呢? 答:使用数据类型转换
案例1:把用户输入的幸运数字,转换为整型
以上代码还可以简写为:
讯享网
案例2:多种数据类型转换
案例3:eval()方法的使用,把字符串中的数字转换为原数据类型
讯享网
str1 = ‘10’ 经过eval(str1) 转换为int类型
str2 = ‘10.88’ 经过eval(str1) 转换为float类型
数据类型转换方法一共学了4个方法:
int() :转整型
float() :转浮点类型
str() :转字符串类型
eval() :把字符串转换为原数据类型
记住:① 如果一个字符串 * 数字,代表对这个字符串进行复制操作
② 当float浮点类型转换为int整型时,其小数点后面的数据会丢失,一定要记住这个特性。
③ 字符串转数值类型,字符串中的数据必须是有意义的数值

需求:用户手工输入梯形的上底、下底以及高,能直接通过Python打印出梯形的面积为多少。
所谓的算数运算符就是我们日常生活中的加减乘除等待。
案例1:了解一下算术运算符
案例2:和其他编程语言不太相同的几个算术运算符
讯享网
知识点:用户输入、数据类型转换以及算术运算符
案例1:把某个值赋值给某个变量
讯享网
案例2:多个变量同时进行赋值操作
简写为:
讯享网
案例3:多个变量赋予相同的值
简写为:
讯享网
复合赋值运算符 = 算术运算符 结合 赋值运算符

复合赋值运算符的计算顺序 = 先执行算术运算符,执行完毕后,把结果在赋值给左边的变量。
案例:综合案例

特别注意:当我们使用比较运算符对两个变量进行比较时,其返回一个布尔类型的值。
案例:两个数大小的比较
讯享网
练习题1:提示用户输入圆的半径,根据公式S = πr2求圆的面积
练习题2:赋值运算 => 输入身高,体重,求BMI = 体重(kg)/身高(m)的平方。
讯享网

not就是取反,只有一个表达式,如果表达式为True,则not以后就返回False。反之,则返回True。
and :逻辑与,只有当两边的表达式全部为真,则最终结果返回为真,否则返回为假。
x :False
y :False
result = x and y
or :逻辑或,只要有一方为真,则整个表达式的返回结果就为真。除非两边的表达式都为假,则整个结果返回为假。
result = x or y
讲个非诚勿扰的小故事:
① 女孩子要求比较高,要求男孩子必须要有房且有车
② 女孩子要求一般,要求男孩子有房或者有车即可
讯享网
逻辑与、或、非,其最终的返回结果也是一个布尔类型的值,True或False。另外在实际工作中,逻辑运算符也主要和if分支结构相结合。
案例:
在Python代码中,逻辑运算符的运算,要遵循短路运算原则。
① 表达式1 and 表达式2,如果表达式1条件为真,则最终的运算结果由右边的表达式2来决定。如果表达式1条件为假,则最终结果为假。其右边的表达式2不需要在进行运算。
② 表达式1 or 表达式2,如果表达式1为真,则最终的运算结果由表达式1来决定,为真。如果表达式1为假,则最终结果由表达式2来决定。如果表达式2为真,则最终结果为真,如果表达式2为假,则最终结果为假。
讯享网
在逻辑运算中,不一定逻辑运算符的两边都是纯表达式,也可以是数值类型的数据或字符串类型的数据。
Python把0、空字符串和None看成 False,其他数值和非空字符串都看成 True,所以:
① 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
② 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。 所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。
讯享网
什么是运算符的优先级?其实我们小学就已经接触过了,就是在一个表达式中,我们先算谁的问题。

先算乘除,后算加减,有括号的先算括号里面的。

个人建议:
① 不要把一个表达式写得过于复杂,如果一个表达式过于复杂,尝试把它拆分来书写
② 不要过于依赖运算符的优先级来控制表达式的执行顺序,这样可读性太差,应尽量使用( )来控制表达式的执行顺序
在日常开发中,只要有需要进行条件判断的语句基本上都是选择判断结构。
应用场景:
如果年龄大于等于18岁,则可以正常上网。
如果升级考试成绩大于60分,则可以顺利升级就业班。
Java:
但是Python中,不需要使用这么多复杂的符号,直接可以编写条件判断及执行某段代码
Python:
讯享网
案例代码:
需求:定义一个变量age = 18,判断这个变量是否大于等于18岁,如果满足条件,则可以上网。
案例1:直接定义判断,进行条件判断
讯享网
案例2:上网吧案例升级版
if选择原理图:学编程除了会写代码还不行,还要回画图(流程图)

基本语法:
讯享网
案例3:上网吧案例升级升级版,引入else
if…else…结构原理图:

如果条件1成立,则执行语句段1
如果条件2成立,则执行语句段2
…
当所有条件都不成立时,则执行else语句段中的内容
讯享网
if多重条件判断原理图:

案例:
① 中国合法工作年龄为18-60岁,即如果年龄小于18的情况为童工,不合法;
② 如果年龄在18-60岁之间为合法工龄;
③ 大于60岁为法定退休年龄。
简写形式:
讯享网
基本语法:
嵌套结构看起来异常复杂,但是我们在编写时要遵循一个原则:先编写外层判断,所有语句编写完成后,在编写内层条件判断结构。
案例:法律规定,车辆驾驶员的血液酒精含量小于 20mg/100ml 不构成酒驾;酒精含量大于或等于 20mg/100ml 为酒驾;酒精含量大于或等于 80mg/100ml 为醉驾。编写 Python 程序判断是否为酒后驾车。
讯享网
参与游戏的角色有两个(玩家 与 电脑),玩家手工出拳,电脑随机出拳,根据石头剪刀布判断输赢。
玩家:player(玩家手工输入石头、剪刀、布)
电脑:computer(随机出拳)
输赢结果很重要,有三种情况:
① 玩家赢
☆ player:石头 赢 computer:剪刀
☆ palyer:剪刀 赢 computer:布
☆ player:布 赢 computer:石头
② 平局
只要player 与 computer出拳相等,就代表平局
③ 电脑赢
如果不满足以上两个条件,则电脑获胜!
未知知识点:如何让计算机随机出拳 => 随机
确认:if…elif…else多条件分支结构
遗留问题:计算机没办法随机出拳
Python语言非常的强大,强大之处就在于其拥有很多模块(module),这些模块中拥有很多别人已经开发好的代码,我们可以直接导入到我们的程序中即可使用。
① import导入模块
② 通过模块.方法()调用相关功能
随机出拳其实就是随机从0,1,2中选出一个数字
讯享网
改进猜拳代码:
在Python中三目运算符也叫三元运算符,其主要作用:就是用于简化if…else…语句。
讯享网
转换为三目运算符:
需求:输入两个数值,返回最大值
讯享网
简化:三目运算符

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/146642.html