我们来看上节课的练习。上节课的答案为ABE。
选项A的s[1+1+1],先做中括号的计算,得出的结果与前半部分相同,因此选项A正确。
选项B的(s+s)[0],首先看括号中的部分,s+s代表两个字符串相加。还记得我们之前讲解过得字符串连接吗,就是通过加号将两个字符串拼接在一起,那么(s+s)[0]的取值为拼接后的字符串的首字母,与s[0]的结果相同,选项B正确。
选项E的(s+s)[-1],同样先查看括号部分,也是两个字符串相加,(s+s)[-1]的取值为后拼接的字符串的最后一个字母,取值与字符串s[-1]的取值相同,选项E正确。
选项C和D就由同学们自己验证啦,不要忘了考虑空字符串的情况哦~
这节课我们来学习字符串的分片。
字符串的分片即截取字符串中的部分内容,书写格式如下:
s = "<string>"
print s[number1:number2]
其中,s代表字符串,number1代表字符串截取的起始位置,number2代表字符串截取的终止位置,但不包括number2位置上的字母,即含头不含尾。
我们先来看几个例子:
word = "assume"
print word[3] # 截取索引为3的字母
print word[4:6] # 截取索引从4开始至6但不包含6的字母
print word[4:] # 截取索引从4开始至结尾的所有字符串
print word[:2] # 截取从头开始至2但不包含2的字母
print word[:] # 截取全部字符串
下面我们来看几个小练习:
1. s = "apython",请通过截取字符串s,写出能够输出“Python”的代码,尽量避免额外的代码。
2. s为任意字符串,以下哪几个选项得到的结果与s相同?
A. s[:]
B. s+s[0 : -1+1]
C. s[0:]
D. s[: -1]
E. s[3:] + s[:3]
本次课程就到这里,我们下节课见。
代码编辑环境:http://www.runoob.com/try/runcode.php?filename=HelloWorld&type=python
下篇链接:https://blog.csdn.net/sinat_31117849/article/details/86161101