Python学习笔记Ⅱ —— 判断、逻辑运算、循环、字符串切片

本节内容:1. if判断语句  2.逻辑运算符  3.循环  4.字符串及切片

1.if判断语句

1.1 if的用法

判断在生活中无处不在,比如在一些场所会看到“未满18岁禁止入内”的标语,就是以人的年龄来进行判断是否允许进入;计算机只认识0和1,所有的代码最终给机器执行时就是判断 0 or 1;Python中使用if语句来判断条件的真或假,然后决定下一步要执行的代码,但一条 if 语句只能实现满足一种条件后执行需要的代码,故常与 elif 连用来对多种条件分别判断,如果所有条件都不满足时也需要执行一些代码则使用else实现。

ifelifelse的组合使用必须满足以 if 语句开始,不可在无 if 的情况下使用 elif else,使用格式如下:

age = 20
#1.单独使用if
if age >=18:
    print("你可以进去嗨皮了")

#2.if与elif组合
if age >= 18:
    print("你可以进去嗨皮了")
elif 16 <= age < 18:
    print("你可以看看,但不能自己上")

#3.if与else组合
if age >= 18:
    print("你可以进去嗨皮了")
else:
    print("等你长大再来吧")

#4.if、elif、else组合使用
if age >= 18:
    print("你可以进去嗨皮了")
elif 16 <= age < 18:
    print("你可以看看,但不能自己上")
elif 14 <= age < 16:
    print("你多给点钱就让你看几眼")
else:
    print("等你长大再来吧")

1.2 if的嵌套

以“输入学生成绩,判断优秀、良好、及格、不及格”为例,简单介绍 if 的嵌套使用。

#判断学生成绩属于优秀、良好、及格、不及格中的哪一档,并打印
stu_score = int(input("请输入学生的成绩"))
if 0 <= stu_score <= 100:
    if stu_score >= 60:
        if stu_score >= 80:
            if stu_score >= 90:
                print("优秀")
            else:
                print("良好")
        else:
            print("及格")
    else:
        print("不及格")  
else:
    print("抱歉,您的输入有误")  

2.逻辑运算符

2.1 逻辑运算符的用法

逻辑运算即我们所熟知的与、或、非运算,在Python中使用 and、or、not 来表示,运算规则如下:

1.and运算遵循“同真为真,有假即假”,即 真 and 真 = 真、真 and 假 =假、 假 and 假 =假;

2.or运算遵循“同假为假,有真即真”,即真 or 真 = 真、真 or 假 =真、 假 or 假 =假;

3.not运算即取反,由假变真,由真变假。

2.1 逻辑运算符的优先级

如同加减乘除,当一个式子中存在多种运算符且无括号包裹,将按照运算符的优先级进行计算;Python中的逻辑运算符也有优先级 ,我们结合 if 判断语句来验证一下该优先级的顺序。

#1.验证 and 和 not 的优先级:
if not False and False:
    print("and 的优先级高于 not")
else:
    print("not 的优先级高于 and")
#2.验证 and 和 or 的优先级:
if True or False and False:
    print("and 的优先级高于 or")
else:
    print("or 的优先级高于 and")

运行结果:

所以在Python中逻辑运算符的优先级排序为:not > and > or,但个人感觉为了省去判断优先级的麻烦可按照运算需求添加(),同时也提高了可读性,一举两得,何乐而不为呢?

3.循环

在现实生活中,程序往往都需要运行多次,或者说由用户来决定什么时候关闭,例如超市收银员使用收银系统时,给一个顾客结账后需要立刻给下一位顾客结账;此时就需要使用循环来满足程序运行的次数、在什么情况下关闭等需求。

Python中的循环分为两种:1.while循环 2. for循环,其中for循环主要用于遍历功能。

3.1 while循环

while说的通俗点就是“当什么什么时候,做什么什么事情”,以输出1,2,3,4,5为例:

#使用while循环输出1,2,3,4,5
i = 1
while i<=5:
    print(i)
    i+=1

3.2 for循环

for循环一般与in连用,来实现将一个范围中的数据一个一个拿出来运行循环中的代码,这个范围相当宽泛,可以是字符串、列表、字典等等。

讲到for循环,就不得不讲range函数,range函数有三个参数,用法为:range(起始数,终止数,步长),注意:1.range中的起始数默认为0,步长默认为1; 2.range中的终止数是无法取到的,即range(1)只能取到0.

同样以输出1,2,3,4,5为例:

#使用for循环输出1,2,3,4,5
for num in range(1,6,1):
    print(num)

4.字符串及切片

4.1 字符串的定义

只要使用引号(单引号、双引号)引起来的数据就是字符串,例如'1',"abc","1.1"。

4.2 下标及切片

下标就类似超市门口的自助储物柜编号,我们拿着打印编号的条码纸可以打开对应的柜子;如果想从字符串中取出想要的字符,有了字符串的下标就好办多了。

#从'Sunshine'这个字符串中取出'S'、's'、'e'、'i'
my_str = 'Sunshine'
print(my_str[0])       #从左至右,下标从0开始,那么'S'的下标就是0
print(my_str[3])       #那么's'的下标就是3
print(my_str[-1])      #下标除了从左至右算起,还可以从右至左算起,下标从-1开始
print(my_str[-3])      #那么'i'的下标就是-3

切片就是将一个整体中我们需要的部分切出来,为我所用。用法与range相似,my_str[起始下标,终止下标,步长],同样的要注意以下三点:1.终止下标是无法取到的,且起始坐标的默认值为0,步长默认值为1;2.终止下标没有默认值,但如果不传参数,那么默认切片至最后一位。3. 切片时也可使用负数下标。用以下两个例子简单演示切片的使用:

# 1.从'Do you love me ?'中取出'love'
my_str = 'Do you love me ?'
print(my_str[7:11:1])
print("="*10+"华丽的分割线"+"="*10)
print(my_str[-9:-5:1])

# 2.将'smart'变为trams
my_word = 'smart'
print(my_word[::-1])

 

 

你可能感兴趣的:(Python学习笔记Ⅱ —— 判断、逻辑运算、循环、字符串切片)