Python基础学习04天

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

认识条件判断

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

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

cars = ['audi', 'bmw', 'subaru', 'toyota']
for car in cars:
    if car == 'bmw':
        print(car.upper())
    else:
        print(car.title())

运行结果:

Audi
BMW
Subaru
Toyota

条件测试

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

判断是否相等

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

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

运行结果:False

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

判断是否不相等

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

比较数字

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

代码示例:

>>> num = 29
>>> num < 21
False
>>> num >= 4
True
>>>

多个条件判断

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

代码示例:

>>> 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

代码示例:

>>> requested_toppings = ['mushrooms', 'onions', 'pineapple']
>>> 'mushrooms' in requested_toppings
True
>>> 'pepperoni' in requested_toppings
False

检查特定的值是否不包含在列表中

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

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

布尔表达式

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

if语句

简单的if语句

代码示例:

num = 34
if num >= 18:
    print("恭喜,您已经成年")

if-else语句

代码示例:

num = 16
if num >= 18:
    print("恭喜,您已经成年")
else:
    print("你好,你未成年呢")

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

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

使用if语句处理列表

检查特殊元素
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 条评论
登录 后参与评论

相关文章

来自专栏Laoqi's Linux运维专列

While 循环语句

42680
来自专栏WindCoder

Java基础小结(一)

1、default (即缺省,什么也不写): 在同一包内可见,不使用任何修饰符。使用对象:类、接口、变量、方法。

12810
来自专栏测试开发架构之路

C++之多态的一个例子

[例12.1] 先建立一个Point(点)类,包含数据成员x,y(坐标点)。以它为基类,派生出一个Circle(圆)类,增加数据成员r(半径),再以Circle...

35770
来自专栏雪胖纸的玩蛇日常

老男孩Python全栈开发(92天全)视频教程 自学笔记07

13010
来自专栏我和PYTHON有个约会

11.程序编程基础5:输入输出

python提供了3种输入输出标准文件对象,分别为标准输入、标准输出和标准错误;分别对应了sys模块中的sys.stdin,sys.stdout,sys.std...

10920
来自专栏linux驱动个人学习

如何使用C语言的面向对象

我们都知道,C++才是面向对象的语言,但是C语言是否能使用面向对象的功能? (1)继承性 1 typedef struct _parent 2 { 3 int ...

42050
来自专栏韦弦的偶尔分享

Swift 有效的字母异位词 - LeetCode

那么题目就变成了判读两个字符串的组成元素是否是一样的,我们用两个数组获取字符串的所有组成元素,然后排序后比较是否相等:

23020
来自专栏个人随笔

Java 高级开发必修知识---反射

程序猿们经常说的一句话:反射反射。。。程序员的快乐 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法; 对于任意一个对象,都能够调用它的...

43750
来自专栏java学习

Java每日一练(2017/6/15)

题目要求 本期题目: 1、(单选题) What will be printed when you execute the following code? cla...

364100
来自专栏marsggbo

c++学习笔记之封装篇(上)

一、类对象 假设我们由Tv这个类,定义如下 注意class结尾要加上分号 class Tv() { int width; int hei...

18660

扫码关注云+社区

领取腾讯云代金券