每天一点动力——python基础(二)
前言
记录一下复习python的过程,有不对的地方欢迎在评论区批评指正,感谢!!
在上一篇博客每天一点动力——python基础(一)中主要记录了python中的基本数据类型:数字、字符串、列表、元组、集合、字典。这六种基本数据是python基础中的基础,也是在平时编程中最常遇到的语法(这是根据我平时使用python的过程记录的,如果有不对的地方还请批评指正)。有了基本语法之后,接下来就进行编程语句的记录。
一、条件控制
关于条件控制语句,主要就是if……else,目的就是为了进行条件的判断。在python中的条件控制语句中需要注意以下几点即可:
- python中用elif代替了else if,所以python条件控制的基本语法为:
if 条件1:
执行语句1
elif 条件2:
执行语句2
……
else:
else执行语句
- 在python中,不论是if、elif还是else,每个条件语句后面都要加上冒号“:”(注意是英文的)。一开始接触python的时候可能会在这里出错,因为对于大多数人来说,可能C语言是第一语言,所以在使用python进行编程的时候经常会忽略python的中的一些语法结构;
- 使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。(这一点可能也是刚开始接触python的时候会经常犯的一个错误,缩进的方式不对也会出现语法错误,不过写多以后,这个就不是什么大问题了);
- 在python中是没有switch……case语句的(我刚开始写python的时候碰见一个需求,当时觉得用switch……case语句会更方便,但是翻遍python的各种文档也没有找到这个语句,最后就用if……else语句来代替了)。
条件控制语句中常用的操作运算符:
操作符 | 描述 |
---|---|
< | 小于 |
<= | 小于等于 |
> | 大于 |
>= | 大于等于 |
== | 等于 |
!= | 不等于 |
需要注意的有以下几点:
- 注意“==”和“=”:两个等号的等于,一个等号是赋值;
- “<=”,“>=”,“==”中间不能有空格或其他字符;
条件语句中还可以再嵌套条件语句
if 表达式1:
语句
if 表达式2:
语句
elif 表达式3:
语句
else:
语句
elif 表达式4:
语句
else:
语句
一个简单的猜数字游戏:
import random
correct_num = random.randrange(1, 100) # 生成1-100中的一个随机数
while 1: # while循环,1就表示True
num = int(input("请输入数字:")) # 将输入的值变成int类型,因为默认输入的是字符串
if num > correct_num:
print("猜大了!!")
elif num < correct_num:
print("猜小了!!")
else:
print("恭喜你,猜对了!!")
break
执行结果:
请输入数字:12
猜小了!!
请输入数字:85
猜大了!!
请输入数字:52
猜大了!!
请输入数字:42
猜大了!!
请输入数字:32
猜大了!!
请输入数字:22
猜小了!!
请输入数字:30
猜大了!!
请输入数字:25
猜小了!!
请输入数字:27
猜小了!!
请输入数字:28
恭喜你,猜对了!!
二、循环语句
python中的循环包括while循环和for循环。
注:只有for循环和while循环,没有do……while
1.while循环
while 判断条件:
执行语句
需要注意以下几点:
- 书写时注意冒号和缩进;
- 注意避免陷入死循环(不过有些场景下需要进行进入死循环,例如socket中客户端进行请求时服务端就需要进行无限循环),可以用break退出;
- 当执行语句中只有一句时,可以和while写在一行;
2.for循环
for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
在python中,for循环可以和else语句一起用:
for <variable> in <sequence>:
<statements>
else:
<statements>
注意:此时else也是循环体的一部分,即当for循环中的语句正常执行完后才能执行else语句,如果遇到break之类的跳出语句时,else中的内容是不执行的,例:
for i in range(5):
print(i)
print("正常完成循环")
else:
print("执行else语句")
执行结果:
0
正常完成循环
1
正常完成循环
2
正常完成循环
3
正常完成循环
4
正常完成循环
执行else语句
for i in range(5):
print(i)
if i == 3:
break
print("正常完成循环")
else:
print("执行else语句")
执行结果:
0
正常完成循环
1
正常完成循环
2
正常完成循环
3
遇到break后就跳出循环,注意跳出的是整个for循环,包括else部分
-
range()函数
这个函数在上一篇博客中已经提到,该函数的目的是对一系列数字进行迭代,这个函数用的最多的就是在for循环里。 -
break和continue
在循环中,有时候需要到达某一条件时就跳出循环或者跳出本次循环,这时候就会用到这两条语句了,只不过有时候我们会将他们的功能搞混,从而错误的进行使用。
break:跳出整个循环,如果是在嵌套循环中,则跳出的是离它最近的那次循环;
for i in range(3):
for j in range(5):
print(f"i = {i},j = {j}")
if j == 2:
break # 跳出的是内部循环
# 执行结果:
i = 0,j = 0
i = 0,j = 1
i = 0,j = 2
i = 1,j = 0
i = 1,j = 1
i = 1,j = 2
i = 2,j = 0
i = 2,j = 1
i = 2,j = 2
for i in range(3):
for j in range(5):
print(f"i = {i},j = {j}")
if i == 1:
break # 跳出的是外部循环
# 执行结果
i = 0,j = 0
i = 0,j = 1
i = 0,j = 2
i = 0,j = 3
i = 0,j = 4
i = 1,j = 0
i = 1,j = 1
i = 1,j = 2
i = 1,j = 3
i = 1,j = 4
continue:执行continue后,本次循环中剩余语句不再执行(下次循环时所有语句正常执行),直接到达下一次循环,和break类似,也是作用于离它最近的循环
for i in range(3):
for j in range(5):
print(f"i = {i},j = {j}")
if j == 1:
continue
print('continue语句')
执行结果:
i = 0,j = 0
continue语句
i = 0,j = 1
i = 0,j = 2
continue语句
i = 0,j = 3
continue语句
i = 0,j = 4
continue语句
i = 1,j = 0
continue语句
i = 1,j = 1
i = 1,j = 2
continue语句
i = 1,j = 3
continue语句
i = 1,j = 4
continue语句
i = 2,j = 0
continue语句
i = 2,j = 1
i = 2,j = 2
continue语句
i = 2,j = 3
continue语句
i = 2,j = 4
continue语句
盗张菜鸟教程的图
break执行流程:
continue执行流程:
-
pass语句
pass语句是空语句,不做任何事情,目的是为了保持程序结构的完整性。一般我们在做一个完整的事情时(项目也好,实验也好),有时候定义好函数、类或者写好循环判断语句时,一时间想不起来下一步该干嘛,就可以先用pass语句占上位置,然后再回来补充即可。(还记得两年前,我竟然天真的以为pass可以跳出循环,因为之前没见过pass,所以觉得pass可能会恨高大上,结果,唉不说了,都是泪啊!!)
写在最后
本文是个人的一些学习笔记,如有侵权,请及时联系我进行删除,谢谢大家.
上一篇: 快捷方式图标没了解决方法
下一篇: 刘全有多少家产?最后死得很奇葩