逻辑运算符
and
单词and是“并且”的意思。
需要同时满足多个条件时,可以使用逻辑运算符and连接。
条件1 and 条件2
所有条件都成立,整个条件才成立;
有一个条件不成立,整个条件就不成立。
a = 12
b = 5
if a == 12 and b == 5:
print('xiaowangzi')
“and”左右两边条件都成立,执行if语句下级代码,打印出xiaowangzi
。
a = 12
b = 5
if a < b and b == 5:
print(‘xiaowangzi’)
“and”左右两边只有一个条件成立,不执行if语句下级代码,无输出。
or
单词or是“或者”的意思。
多个条件仅需要满足其中一个条件时,可以使用逻辑运算符or连接多个条件。
任意一个条件成立,整个条件成立;
所有条件不成立,整个条件不成立。
a = 12
b = 5
if a > b and b == 5:
print('xiaowangzi')
or左右两边条件都成立,执行if语句下级代码,打印出xiaowangzi
。
a = 12
b = 5
if a < b and b == 5:
print(‘xiaowangzi’)
or左右两边只有一个条件成立,执行if语句下级代码,打印出xiaowangzi
。
a = 12
b = 5
if a < b and b == 12:
print(‘xiaowangzi’)
or左右两边条件都不成立,整个条件不成立,不执行下级代码,无输出。
字符索引
字符串中的每个字符都有一个编号,在python中,这些字符的 编号叫做索引。
使用索引可以得到字符串中的某一个字符。
字符串名称[索引]
字符串索引是从0开始的。
字符串中的最大的索引,总是比字符的个数少人。
字符串切片
当我们想要取得字符串中某一段字符的时候,就需要使用字符串切片。
保留某索引后面的字符
冒号前面填写索引,表示切割的起始位置,会保留大于等于该索引的字符。
变量名[索引:]
k = 'basketball'
print(n[6:])
从第6个字符索引开始,最后打印出ball
。
保留某索引前面的字符
冒号后面填写索引,表示切割的结束位置,会保留小于该索引的字符。
变量名[:索引]
k = 'basketball'
print(n[:6])
从字符索引0开始,第6个字符索引前结束(不包含第6个字符索引),最后打印出basket
。
保留两个索引之间的字符
冒号前后分别填入起始索引和结束索引,起始索引对应的字符会被保留下来;而结束索引对应的字符,不会被保留下来。
变量名[起始索引:结束索引]
n = 'xiaowangzi'
print(n[4:8])
最后打印出wang
。
len()命令
使用len()命令,可以获取字符串的长度。len是英文单词length的缩写,表示长度。
len(‘字符串’)
len(存储着字符串的变量)
在len()命令括号中需要填入一个字符串,或者存储着字符串的变量。 len()命令会返回一个数字,这个数字就表示字符串的长度。
k = len('xiaowangzi')
print(k)
打印输出10。
k = 'xiaowangzi'
h = len(k)
print(h)
打印输出10。
continue语句
int()命令
使用int()命令,可以把被引号引起来的数字或者存储着字符串的变量,转换为数字类型。
int(‘数字’)
int(变量)
while True:
print('forward')
a = input()
a = int(a)
if a == 5:
break
input()命令得到的都是字符串,使用int()命令转换为数字后,才能进行计算。
continue语句
程序执行continue语句时,程序会结束当前循环,不会再进行执行continue下面的下级代码,而是直接进入下一次循环。
while True:
print('forward')
a = input()
n = int(a)
if n == 4:
break
if n == 2:
continue
print('fix')
if嵌套
if嵌套
把一个if语句写在了另一个if语句的下级代码里面,这样的代码 结构叫做if嵌套。
if 判断条件:
if 判断条件:
下级代码
程序运行后,只有在第一个if语句的条件成立时,才会执行下级代码中的if语句。
color = 'red'
name = 'xiaowangzi'
if color == 'red':
if name == 'xiaowangzi':
print(1)
print(2)
print(2)是第一个if语句的下级代码,不受第二个if语句的控制; 如果第一个if语句条件成立,那么print(2)就一定会执行。
color = 'red'
name = 'xiaowangzi'
if color == 'red':
if name == 'xiaowangzi':
print(1)
在这段代码中,需要同时满足两个条件,程序就会打印1。
color = 'red'
name = 'xiaowangzi'
if color == 'red' and name == 'xiaowangzi':
print(1)
使用逻辑运算符and,也可以实现if嵌套的功能,从而简化代码。
and左右两边条件均成立时,if语句条件成立,执行下级代码,打印1。
if-else嵌套
if 条件1:
if 条件2:
下级代码
else:
下级代码
else:
下级代码
a = '123'
b = 'abc'
if a == '123':
if b == 'abc'
print(1)
else:
print(2)
else:
print(3)
for循环嵌套
for 循环嵌套
把一个for循环写在了另一个for循环的下级代码处,这样的代 码结构叫做for循环嵌套。
for i in range(循环次数):
for j in range(循环次数):
下级代码
在外层的for循环,叫做外层循环或者外循环。 在内层的for循环,叫做内层循环或者内循环。
for i in range(3):
print('d')
for i in range(4):
print('edge')
print(120)
识别循环嵌套
print('我是小王子')
for i in range(3):
print('王子')
for j in range(2):
print('你好')
print('再见')
1.内循环的下级代码前,有两个缩进。
2.内循环是外循环的一部分,内循环中的所有代码也都是外循环的下级代码。
3.因为前没有缩进,所以不是任何循环结构的下级代码。
for循环嵌套的执行顺序
print('我是小王子')
for i in range(2):
print('王子')
for j in range(3):
print('你好')
print('再见')
程序按照从上到下的顺序开始执行,首先打印我是小王子
。 之后程序会进入到外循环中:
进入循环后,先打印出王子
,然后,进入第2个for循环结构,
打印出了3次你好
,这时,第一次外循环全部结束,程序会开始第二次外循环。 直至外循环全部执行完毕后,打印再见
。
内、外循环的执行次数
print('我是小王子')
for i in range(2):
print('王子')
for j in range(3):
print('你好')
print('再见')
在执行for循环嵌套的时候,外循环被执行1次,内循环就会被完整地执行一遍。
由于外循环次数为2,所以外循环的下级代码,会被重复执行2次。
上面代码最终输出结果是:我是小王子/王子你好你好你好/王子你好你好你好/再见
1.外层循环执行1次,内层循环会全部执行1遍。
2.如果外层循环执行M次,内层循环执行N次,那么内循环 的下级代码一共会执行M*N次。