目录
(1)for循环可以对字符串进行遍历,逐个获得字符串的每一个字符
(3)需要循环操作相同的内容时,可以用for循环和range()函数结合使用先看range()
一:if语句
if 语句用于根据条件执行不同的代码块。condition是一个布尔表达式,后面一定要加冒号,这是python 语法规定。if语句后面的条件表达式是可以加括号的,但并不是必须的。使用括号可以使代码更加清晰易读,特别是在复杂的条件表达式中。然而,括号并不是语法要求,可以根据个人编码风格和团队约定进行选择。
1,if语句的语法及应用示例
if语句用于判断某个条件是否成立。如果成立,则执行语句内的程序;否则跳过if语句, 执行后面的内容,语法格式如下。
if condition:
else:
示例 1:下面的代码演示了如何使用if语句来判断一个数是否为正数:
示例 2:接收学生的考试成绩,使用if语句判断。如果考试成绩大于等于60分,输出“合格
示例2中,通过变量score保存键盘输入的成绩80。当if语判断当成绩大于等于60时,输出“合格”。在Python3中,input方法默认返回为str类型。如果想要输出int类型就要改变输出类型为int。
2,条件表达式与关系运算符
使用 if语句时,后面要用到条件表示式和关系运算符,它们可以经过运算得到布尔值。如前面示例的score>=60就是一个使用关系运算符“>=”的条件表达式,表示:如果score 大于等于 60,则表达式的结果是True(真);否则为False(假)。条件表达式的语法如下。语法:
操作数 关系运算符 操作数
关系运算符的前后2个数值,条件表达式的计算结果是布尔值。常用的关系运算符如表 2-1 所示。
表2-1关系运算符
关系运算符 说明
== 等于 |
!= 不等于 |
>大于 |
<小于 |
>= 大于等于 |
<= 小于等于 |
示例3:关系运算符的运算结果。
条件表达式 10==9 是判断“==”运算符左右两侧的数值是否相等。因为10不等于9,所以,10==9的运行结果是 False。
条件表达式 10!=9 是判断“!=”运算符左右两侧的数值是否不相等。因为10不等于9,所以,10!=9的运行结果是 True。
其它的几种也是采用相同的方式进行判断并得到运算结果
3,if语句常见问题
(1)使用 if-elif-else 语句时,容易出现逻辑错误
因为条件是由上向下判断,如果条件成立,下面的条件判断将不再执行。示例5的代码中,如果把条件表达式的顺序颠倒,比如把score>=60放到score>=90之前,那么输入100时,首先判断的score>=60是成立的,就不会再执行score>=90条件表达式,程序将无法按要求得到结果。
(2)从其它程序设计语言转为Python 的程序员,由于习惯经常会忘记表达式后面的冒号,需要多练习熟悉语法。
二,python循环
编写程序时经常有一些代码块需要重复运行,Python提供了while和for语句实现循环操作
(一)while循环
下面讲解 while 语句的语法和使用,在理解 while 语句的基础上,会介绍Python 字符串的格式化输出和注释。
1,while循环语句
循环的条件表达式后面也要使用冒号,然后缩进写循环操作语句。while 语句是先判断后执行。即:先判断条件表达式是否成立,如果条件表达式的值为True,则执行循环操作语句。如果其值为False,则跳出循环,执行 while 语句后面的语句。
示例当count 值小于正整数5时,执行加1操作。当 count 小于5 时,输出 count 的值。
下面再来看一个复杂的示例,加深对while循环的理解。
示例输入5门课程的考试成绩,计算平均分并输出。
2,Python的注释
对于编写好的代码,经过一段时间之后,有可能会忘记代码的具体作用,所以代码中要写一些注释文字,以便于日后阅读和修改代码。Python 中使用“#”开头表示注释,可以在代码中添加注释。示:添加了注释的Python代码
对于“#+空格”开头的文字,Python 解释器不会做任何处理。而代码中的注释,可以提高代码的可
读性。
Python 注释有两种用法。一是,在行开头就使用“#”的称为单行注释;二是,紧随同行代码,以“#”开头的称为行内注释。注释并不是在每一行都需要,只需要把不易读的代码做注释即可。
3,字符串的格式化输出
字符串中的”%”,表示插入的是一个整型数据,%s格式化字符串,%f格式化浮点数字字符串后面的“%i”表示获取变量i的值。
4,while循环嵌套
在 while 语句中,可以包含另一个 while 语句,即:使用 while 语句可以实现嵌套循环
示例:使用while语分别接收2名学生的5门课程考试成绩,计算并输出每个人的平均成绩
外层的 while 语句用于输入学生名字,用变量控制循环次数,共2次。内层的 while 语句用于输入 5 门成绩,用变量i 控制。也就是在外层循环输入一个名字后,需要输入5门成绩,然后输出这名学生的成绩平均值,一共可以输入2名学生。
(二)for循环
for 语句是另一种用于控制循环结构的方式。Python的while 是使用条件判断执行循环,而 for是使用遍历元素的方式进行循环。
1,for循环的几种方式
(1)for循环可以对字符串进行遍历,逐个获得字符串的每一个字符
(2)for循环可以对列表和元组进行遍历
(3)需要循环操作相同的内容时,可以用for循环和range()函数结合使用先看range()
2,for循环示例
接受某个学生的三门考试成绩,计算出平均成绩
3,for循环嵌套
与while 循环一样,for 语也可以使用嵌套的方式。
示例使用for语分别接收2名学生的5门课程考试成绩,计算并输出每个人的平均成绩
在for循环中嵌套while循环
三,循环控制
使用 while和for语句执行循环操作时,有可能需要改变循环的正常执行顺序,这时就需要用循环控制语句实现,循环控制语句有break和continue。
1,break语句
在循环语句块中使用break语,可以跳出整个循环。
示例对输出平均成绩的代码进行修改,当成绩无效时,使用break退出循环。
在示例 13中的大部分代码是前面示例的代码,只是在第8-18行加入了对成绩有效性的判断。如果不符合条件,则退出循环。
当输入 111时,条件表达式score<0orscore>180的值为True,程序执行 8-10行,break 退出 for循环。
break 只和一个 for 循环对应,虽然有 2层循环,但它只会结束离它最近的循环,这里就是第2层for 循环。第 2层循环结束后,接着执行后面的第12 行和 13 行代码,第1层的循环照常遍历执行,开始输入第2个学生“小张”的成绩。
2,continue语句
在 Python中,continue 语句用于跳过当前循环中的剩余代码,并继续执行下一次循环。当 continue语句被执行时,程序将立即跳转到循环的开头,而不执行continue 语句之后的代码。它通常用于条件判断内部,用来控制循环的执行流程。
示例分别接收 2个学生3门课程('Python',MySQL',Linux')的考试成绩,要求成绩的取值范围是大于等于 0日小于等于 100:计算并输出每个学生的平均成绩,代码如下。
第1层使用的是for 循环遍历学生,第2层使用while 循环遍历成绩,使用continue 是跳到离它最近的循环的下一轮,也就是第2层的while 循环的下一轮。因为执行continue 后,第 13 行的 i= 1+1 没有执行,而是重新又执行第6行的 while 循环,所以就是对当前课程的成绩重新输入。当输入 MySQL 的成绩为 111 时,提示数据有误,然后又提示需要重新输入 MySQL 成绩,代码更加健壮。