Python基础学习04天

主要内容:条件判断和if语句的使用;

认识条件判断

在日常开发中需要用到如果怎么样就怎么样,否则就怎么样的逻辑。主要采用if语句来实现的。

例如:假设你有一个汽车 列表,并想将其中每辆汽车的名称打印出来。对于大多数汽车,都应以首字母大写的方式打印其 名称,但对于汽车名'bmw',应以全大写的方式打印。下面的代码遍历一个列表,并以首字母大 写的方式打印其中的汽车名,但对于汽车名'bmw',以全大写的方式打印:

1
2
3
4
5
6
cars = ['audi', 'bmw', 'subaru', 'toyota']
for car in cars:
if car == 'bmw':
print(car.upper())
else:
print(car.title())

运行结果:

1
2
3
4
Audi
BMW
Subaru
Toyota

条件测试

每条if语句的核心都是一个值为TrueFalse的表达式,这种表达式被称为条件测试。

判断是否相等

相等的语句是:==,赋值的语句是:=,两者需要作区分。

1
2
c = 'like'
print(c == 'Like')

运行结果:False

如果需要或略大小写可以采用将其转化为小写的方式,函数为:lower()。其余的逻辑同理。

判断是否不相等

语句:!=,其余的逻辑类似,不过多阐述。

比较数字

条件语句中可包含各种数学比较,如小于、小于等于、大于、大于等于。

代码示例:

1
2
3
4
5
6
>>> num = 29
>>> num < 21
False
>>> num >= 4
True
>>>
多个条件判断

多个条件判断将条件采用关键字and连接,只有全部为true才能满足,否则整体条件就为false。如果是或者的关系采用关键字or,只要满足其中的一个整体条件就为true。如果不确定优先级(或者可读性)的问题,可以采用括号就没个单个条件括起来。

代码示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
>>> age_0 = 22 
>>> age_1 = 18
>>> age_0 >= 21 and age_1 >= 21
False
>>> age_1 = 22
>>> age_0 >= 21 and age_1 >= 21
True
>>> age_0 = 22
>>> age_1 = 18
>>> age_0 >= 21 or age_1 >= 21
True
>>> age_0 = 18
>>> age_0 >= 21 or age_1 >= 21
>>> False

采用括号的形式提高可读性和解决优先级的问题。

1
(age_0 >= 21) and (age_1 >= 21)
检查特定的值是否包含在列表中

要判断特定的值是否已包含在列表中,可使用关键字in

代码示例:

1
2
3
4
5
>>> requested_toppings = ['mushrooms', 'onions', 'pineapple']
>>> 'mushrooms' in requested_toppings
True
>>> 'pepperoni' in requested_toppings
False
检查特定的值是否不包含在列表中

确定特定的值未包含在列表中,可使用关键字not in

使用方法和上面判断是否在列表中一致。

布尔表达式

布尔表达式的结果要么为True,要么为False,布尔值通常用于记录条件。

if语句

简单的if语句

代码示例:

1
2
3
num = 34
if num >= 18:
print("恭喜,您已经成年")
if-else语句

代码示例:

1
2
3
4
5
num = 16
if num >= 18:
print("恭喜,您已经成年")
else:
print("你好,你未成年呢")
if-elif-else 结构
1
2
3
4
5
6
7
num = 16
if num >= 18:
print("恭喜,您已经成年")
elif num > 15:
print("你好,还差3年就成年")
else:
print("122")

elif可以连续多次使用,多加判断即可。同时在某些时候可以省略else的部分。

使用if语句处理列表

检查特殊元素
1
2
3
4
5
6
7
requested_toppings = ['mushrooms', 'green peppers', 'extra cheese']
for requested_topping in requested_toppings:
if requested_topping == 'green peppers':
print("Sorry, we are out of green peppers right now.")
else:
print("Adding " + requested_topping + ".")
print("\nFinished making your pizza!")

循环的时候可以进行判断,然后即可,同时还可以判断是否为空列表。

一分支持,也是鼓励!
0%