159
社区成员




一、完成技能树基础语法部分练习
已完成
二、基础语法部分学习笔记。
Python顺序程序结构指的是采用顺序执行代码来实现目标的程序结构。在这种结构中,一系列语句逐行执行,每一行都会顺序执行,直到程序执行完成或者遇到break、return等语句时停止。 它的优点是结构简单,可以理解性强。
举例如下
a = 5
b = 7
c = a + b
d = c * 98
print(a, b, c, d)
2. 条件和分支
条件表达式运算符和操作数组成
条件表达式的基本格式是: “如果条件表达式为真,则执行操作A;否则执行操作B”
Python中,while和if都是条件表达式,条件表达式中的条件语句不仅仅是比较运算符(>、<、==、!=等),还可以是其他运算符。
(1) in与not in运算符
in与not in运算符用于判断某个值是否在指定的序列中,代码如下所示。
list1 = [1, 2, 3, 4, 5]
a = 1
b = 6
a in list1
b not in list1
in和not in这两个运算符返回值是True或者False。
(2) is与is not运算符
is与is not运算符判断两个对象是否是同一个对象,代码如下所示:
i1 = 1
i2 = 2
i3 = 1
i1 is i3
i1 is not i2
is与is not这两个运算符返回值是True或者False。
(3)链式比较
Python支持链式比较,代码如下所示:
i1 = 1
i2 = 2
i3 = 3
i3 > i2 > i1
其中,i3>i2>i1就是一个链式比较,该表达式等价于i3>i2 and i2>i1。
(4)and、or与not的优先级
在Python的and、or与not中,not的优先级最高,其次是and,or的优先级最低,因此,对于表达式A or not B and C,首先计算not B,之后计算(not B)and C,最后再计算A or ((not B)and C)。
(5)and与or的短路功能
and与or的短路功能指的是从左向右计算含有and或or的语句的值,一旦语句的值确定,则其后的语句不再计算,如下代码所示。
i = 1
j = 2
i>0 or j>1
i<0 and j>1
对于or语句,i>0的值是True,此时已经能够计算出该语句的值是True,因此or之后的j>1这个语句不会被计算;同理,对于and语句,i<0的值是False,此时已经能够计算出该语句的值是False,因此and之后的j>1语句不会被计算。
(6)运算数是非布尔类型的and语句和or语句
对于运算数是非布尔类型的and语句和or语句,其取值是语句中最后一个计算的值,代码如下所示:
0 or 11
1 and 00
但是,由于在“5 and与or的短路功能”中提到的短路功能,因此,有如下代码
1 or 01
0 and 10
因为and与or具有短路功能,因此对于or语句,1就可以确定该语句的值,因此or语句之后的表达式将不会被计算,1是该语句最后计算的表达式,因此该or语句的值是1;同理,and语句中0就可以确定该语句的值,因此,and语句之后的表达式将不会被计算,0是该语句最后计算的表达式,因此该and语句的值是0。
(1)while循环
若循环条件为True,则循环执行while循环中的代码段;
若循环条件为False,终止while循环。
若while循环的条件总是True,这种情况叫做死循环 。
n = int(input("请输入一个整数:"))
fact = 1
i = 1
print("n!计算中……")
while i<= n:
fact = fact*i
i = i + 1
else:
print("n!计算完成 ,循环正常结束")
print("n!={}".format(fact))
(2)for循环
目标可以是字符串、文件、range()函数或组合数据类型等;
循环变量用于保存本次循环中访问到的遍历结构中的元素;
for循环的循环次数取决于遍历的目标元素个数。
for 循环变量 in 目标:
代码段
(3)for else循环
for 循环变量 in 目标:
循环体
else:
代码块
4. 循环控制语句
(1) break语句
while 循环条件:
[代码段1]
if 判断条件:
break
[代码段2]
(2)continue语句
for 循环变量 in 遍历结构:
[代码段1]
if 判断条件:
break
[代码段2]
(3)continue语句
while 循环条件:
[代码段1]
if 判断条件:
continue
[代码段2]
for 循环变量 in 遍历结构:
[代码段1]
if 判断条件:
continue
[代码段2]
(4)pass语句
pass的意思是过,pass掉就是淘汰掉的意思。
在python中,pass的意思是空语句,pass语句不做任何事情,只是为了保持程序结构的完整性。