day10- 条件语句

2024-02-24 08:55:01 浏览数 (2)

Python代码如果不做其他处理,是自上往下执行的。但是在我们实际场景中,是需要做一些判断,所以用到了Python的条件判断语句可以根据不同的条件执行不同的代码块

包含 ifelifelse 关键字

每句判断语句使用冒号 : 结尾,使用 缩进 划分语句块,相同缩进数的语句组成一个语句块。

条件控制语句,包括 if 语句、if - else 语句、if - elif - else 语句、以及 if - elif (多个elif) - else 语句。

1、if语句

if语句最直接,只需要判断一次,如果条件成立(为 True),则执行判断语句后带缩进的代码逻辑,否则不执行。

代码语言:javascript复制
if 判断条件:
   执行条件成立的代码块

这块我们需要注意两个地方,冒号必须要有, 需要执行的代码必须缩进,否则就会报错

小栗子:输入一个正整数,判断是否大于7,如果大于输出这个正整数

思路:我们可以使用input方法输入数字,然后将数字使用if判断,是否大于7,为真就输出这个数,对了,input输入的数是字符串类型,字符串无法与整数做比较,我们需要先转换为整数,ok,开始做题

代码语言:javascript复制
number = input('请输入一个数字:')
if int(number) > 7:
    print('这个数是:', number)

2、if - else 语句

同样的,if-else也是判断一次,不过if 条件成立后 执行缩进的代码块,条件不成立的执行else后的缩进代码块

代码语言:javascript复制
if 判断条件:
    执行条件成立的代码块
else:
    执行条件不成立的代码块

这块我们需要注意的是,条件判断一次,但是会执行两个代码逻辑

同样的我们看栗子

小栗子:输入一个正整数,判断是否大于7,如果大于输出这个正整数,否则输出字符串:这个数小于等于7

代码语言:javascript复制
number = input('请输入一个数字:')
if int(number) > 7:
    print('这个数是:', number)
else:
    print('这个数小于等于7')

3、if - elif - else 语句

if - elif -else 语句中又出现了一个elif,说明又加一次判断,我们先用if判断,如果成立,执行对应的代码块,如果不成立,在用elif判断,如果成立,执行对应的代码块,如果还不成立,就执行else的代码块

代码语言:javascript复制
if 判断条件:
    执行条件成立的代码块
elif:
    执行该条件成立的代码块
else:
    执行上述条件都不成立的代码块

我们需要注意的是代码块只会执行一次,if后的代码块和elif的代码块不会都执行

小栗子:输入一个正整数,判断是否大于7, 如果大于,输出这个整数大于7 如果这个数等于7,输出这个整数等于7 否则,输出这个数小于7

代码语言:javascript复制
number = input('请输入一个数字:')
if int(number) > 7:
    print('这个整数大于7')
elif int(number) == 7:
    print('这个整数等于7')
else:
    print('这个数小于7')

4、if - elif (多个) - else 语句

多个elif和上一个语句不同的是,有多个条件判断

代码语言:javascript复制
if 判断条件:
    执行条件成立的代码块
elif:
    执行该条件成立的代码块
elif:
    执行该条件成立的代码块
...
else:
    执行上述条件都不成立的代码块

小栗子:小明学生分数成绩获得了80分 成绩分值>90,成绩为'优' 成绩分值大于等于80且小于90,成绩为 '中' 成绩分值大于等于60且小于80,成绩为'及格' 成绩分值小于60的,成绩为'差'

代码语言:javascript复制
score = 80

if score >= 90:
    print("优")
elif 80 <= score < 90:
    print("中")
elif 60 <= score < 80:
    print("及格")
else:
    print("差")

5、嵌套使用

上述都是判断条件的单个使用,在我们使用的应用中,上述四个语句都可以进行嵌套使用,更灵活的处理实际问题,整体的逻辑也容易比较理解

小栗子:输入一个整数,判断是否大于0,并且整数可以整除2,打印输出 ' 这是我们想要的数 ',否则输出 ' 这不是我们想要的数 '

代码语言:javascript复制
number = int(input("输入你的数字: "))
if number > 0:
    if number % 2 == 0:
        print("这是我们想要的数字")
    else:
        print("这不是我们想要的数字")

6、条件控制语句 基础运算符

基础运算符可以看一下之前文章day03-运算符

这里列举下常用的基础运算符:

>

大于

<

小于

==

等于

>=

大于等于

<=

小于等于

!=

不等于

in / not in

成员运算符

is / not is

身份运算符

小栗子:已知小明用户名和密码是xiaoming和123456,输入用户名和密码,如果一致,输出"登录成功" 如果不一致,输出"用户名或密码错误"

代码语言:javascript复制
username = input("请输入用户名:")

password = input("请输入密码:")

if username == "xiaoming":
    if password == "123456":
        print("登录成功!")
    else:
        print("用户名或密码错误!")

7、条件控制语句 逻辑运算符

逻辑运算符也可以看一下之前文章day03-运算符

常用的逻辑运算符:

逻辑运算符

含义

and

逻辑与

or

逻辑或

not

逻辑非

同样的小栗子,我们加上逻辑运算符再次做一遍

小栗子:已知小明用户名和密码是xiaoming和123456,输入用户名和密码,如果一致,输出"登录成功" 如果不一致,输出"用户名或密码错误"

代码语言:javascript复制
username = input("请输入用户名:")

password = input("请输入密码:")

if username == "xiaoming" and password == "123456":
    print("登录成功!")

else:
    print("用户名或密码错误!")

day10练习

初级(day3中题在做一遍):

1.编写一个程序,接受用户输入的一个数字,并判断它是否大于10且小于20。如果是返回"符合",不是就返回"不符合"

2.编写一个程序,接受用户输入的一个正整数,并判断它是否为偶数。如是偶数返回True,是奇数返回False

3.编写一个程序,接受用户输入的一个字符串,并判断它是否包含字母 "a" 或 "b"。如果包含返回True,否则返回False

中级(day3中题在做一遍):

1.编写一个程序,接受用户输入的一个三位数,判断该数是否为水仙花数(水仙花数指一个三位数,其各个位上数字的立方和等于该数本身)

2.编写一个程序,接受用户输入的一个年份,并判断它是否为闰年且大于2000年(闰年条件:能被4整除且不能被100整除,或者能被400整除),如果符合条件,输出"是闰年且大于2000年",不符合条件,输出"不符合条件"

3.输入指定月份,打印该月份所属的季节。 提示:3,4,5 春季 6,7,8 夏季 9,10,11 秋季 12, 1, 2 冬季

4.编写一个程序,有列表[1,2,3,4,5,6,7,8,9]和一个整数8,并判断该整数是否在列表的前半部分,且列表长度大于5

高级

扑克牌1-13个数,随机选择一个扑克牌的数字作为答案。用户输入一个数字,程序会提示大了或是小了,有三次机会,三次内猜中的提示:"binggo,猜对了",否则提示"爆炸"

提示:N = random.randint(a, b),返回随机整数N,a<= N <=b

0 人点赞