每天一点动力——python基础(二)

前言

    记录一下复习python的过程,有不对的地方欢迎在评论区批评指正,感谢!!

    在上一篇博客每天一点动力——python基础(一)中主要记录了python中的基本数据类型:数字、字符串、列表、元组、集合、字典。这六种基本数据是python基础中的基础,也是在平时编程中最常遇到的语法(这是根据我平时使用python的过程记录的,如果有不对的地方还请批评指正)。有了基本语法之后,接下来就进行编程语句的记录。

一、条件控制

    关于条件控制语句,主要就是if……else,目的就是为了进行条件的判断。在python中的条件控制语句中需要注意以下几点即可:

  • python中用elif代替了else if,所以python条件控制的基本语法为:
if 条件1:
	执行语句1
elif 条件2:
	执行语句2
……
elseelse执行语句
  • 在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可能会恨高大上,结果,唉不说了,都是泪啊!!)
写在最后

    本文是个人的一些学习笔记,如有侵权,请及时联系我进行删除,谢谢大家.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值