当天知识点回顾
- 能够知道列表的定义格式
[元素1, 元素2, ....]
- 能够使用列表的添加元素的三个方法(append、insert、extend)
- 能够使用列表的下标来对列表中的元素进行修改
- 能够使用列表的查询方法(in、not in、index、count)
- 能够使用列表中删除元素的方法(del, pop, remove)
- 能够使用 sort 和 reverse 完成对列表的排序。
- 能够知道列表嵌套的格式
随堂练习
- 给定字符串 “abcdefghi”,使用切片取出 下标 0-4 的字符。
- 根据课件练习字符串常见操作的方法。
- 定义一个列表,列表中的元素有
张三、李四、王五、赵六
- 分别使用for循环和while循环打印出 练习7 列表中的元素
- 向练习7的列表中追加一个名字
小明
- 将 练习7 列表中名字
李四
改为赵四
- 将练习7 列表中的
赵六
删除 - 给定一个列表
[32, 17, 28, 90, 11]
完成对该列表的升序和降序的排序
每日练习
题目4(实操题)
题干
james有一个关于爬虫的项目,他需要在一个字符串中查找python这个关键字,
当前他通过index()函数进行查找,虽然可以实现查找的需求,但是总会在
没有查找到关键字的时候报错,为什么会报错,如何优化?
训练目标
- 理解find函数和index函数的区别
训练提示
- find函数如果查找到则返回索引值,如果查不到,则返回-1
- index函数如果查找到则返回索引值,如果查不到,则报错
参考方案
- 通过使用find函数的方式替换掉index
操作步骤
- 通过使用find函数的方式替换掉index
参考答案
str1 = "0123456 python dsafdsf"
print(str1.find('python')) #返回位置为8
题目5 (实操题)
题干
1,判断单词great是否在这个字符串中,如果在,则将每一个great后面加一个s, 如果不在则输出 great不在该字符串中
2,将整个字符串的每一个单词都变成小写,并使每一个单词的首字母变成大写
3,去除首尾的空白,并输出处理过后的字符串
训练目标
- 字符串的相关操作
训练提示
- 字符串的相关操作来解决上述问题
- 使用判断语句来判断语句成立的条件
参考方案
- 使用in判断某一个子字符串是否在母字符串中
- 使用replace函数替换子字符串
- 使用lower函数将字符串变为小写
- 使用title函数将单词的首字母大写
- 使用strip函数去除字符串首尾的空白
操作步骤
- 使用in判断某一个子字符串是否在母字符串中
- 使用replace函数替换子字符串
- 使用lower函数将字符串变为小写
- 使用title函数将单词的首字母大写
- 使用strip函数去除字符串首尾的空白
参考答案
words = " great craTes Create great craters, But great craters Create great craters "
if 'great' in words:
# 在great后面加s
new_words1 = words.replace('great','greats')
print(new_words1)
else:
print('great不在该字符串中')
new_words2 = words.lower()
print(new_words2)
new_words3 = words.title()
print(new_words3)
new_words4 = words.strip()
print(new_words4)
题目6 (实操题)
题干
有一个列表,判断列表中的每一个元素是否以s或e结尾,如果是,则将其放入一个新的列表中,最后输出这个新的列表
my_list = [“red”, “apples”, “orange”, “pink”, “bananas”, “blue”, “black”, “white”]
训练目标
让学员知道列表的循环和值的获取,以及列表的操作方法
训练提示
使用for或者while循环可以取到列表中的每一个值
使用字符串的操作方法可以得知某一个字符串是否是以某值结尾的
参考方案
使用for或while循环获取每一个值
使用endswith可以判断列表中每一个元素是否以s或e结尾
使用append方法可以将元素放入列表中
操作步骤
使用for或while循环获取列表的每一个值
使用endswith判断列表中每一个元素是否以s或e结尾
使用append方法可以将元素放入列表中
参考答案
my_list = ["red", "apples", "orange", "pink", "bananas", "blue", "black", "white"]
new_list = []
for i in my_list:
if i.endswith('s') or i.endswith('e'):
new_list.append(i)
print(new_list)
拓展提高
题目7(实操题)
题干
给定一个列表,首先删除以s开头的元素,删除后,修改第一个元素为"joke",并且并且把最后一个元素复制一份,放在joke的后边
my_list = [“spring”, “look”, “strange”, “curious”, “black”, “hope”]
训练目标
列表包含的操作
列表的相关操作
训练提示
- 通过for循环遍历列表,获取到每一个元素
- 通过列表的操作方法对列表进行修改
参考方案
- 通过for循环获取每一个元素
- 通过remove删除列表中的元素
- 通过insert函数在指定位置插入元素
操作步骤
- 通过for循环获取每一个元素,并使用startswith方法判断是否以某字符串开头
- 如果条件成立,则通过remove删除选中的元素
- 获取到最后一个元素,通过insert将元素放在指定的位置上
参考答案
my_list = ["spring", "look", "strange", "curious", "black", "hope"]
# 删除列表中以s为开头的元素
for i in my_list:
if i.startswith('s'):
my_list.remove(i)
# 删除后列表输出
print(my_list)
# 修改第一个元素为"joke",并且打印结果
my_list[0] = 'joke'
print(my_list)
# 列表最后一个元素复制一份,打印复制结果
last = my_list[-1]
print(last)
# 列表最后一个元素插入到'joke'后面,并且打印结果
my_list.insert(1,last)
print(my_list)
题目8 (实操题)
题干
将下列两个列表合并,将合并后的列表去重,之后降序并输出
list1 = [11, 45, 34, 51, 90]
list2 = [4, 16, 23, 0]
训练目标
列表操作方法的使用
训练提示
1, 列表直接可以直接拼接,元素会合并到同一个列表中
2, 可以使用sort对列表进行排序
参考方案
1,使用 + 对列表进行拼接
2,使用set方法将列表转变成集合,以便于去重,
3,使用sort函数,参数reverse=True对列表进行倒序排序
操作步骤
1,使用 + 对列表进行拼接
2,使用set方法将列表转变成集合,以便于去重,
3,使用sort函数,参数reverse=True对列表进行倒序排序
参考答案
list1 = [11, 45, 34, 51, 90]
list2 = [4, 16, 23, 0]
# 合并列表
new_list = list1 + list2
# 列表去重
new_list2 = list(set(new_list))
print(new_list2)
# 列表倒序排列
new_list2.sort(reverse=True)
print(new_list2)
自主预习
题目9 (实操题)
题干
有如下两行代码:
tuple1 = (2)
tuple2 = (2,)
请问tuple1与tuple2有什么不同
训练目标
让学生知道含有元素的元组的定义的方式
训练提示
通过肉眼能看到的只是一个逗号的区别,那么在python里面他是怎么理解的呢?
参考方案
用type()方法来分别对这两个变量进行区别
操作步骤
用type(tuple1),与type(tuple12)的结果进行比较
参考答案
tuple1 = (2)
tuple2 = (2,)
print(type(tuple1)) # 输出结果为<class 'int'> --表示这个一个整数2
print(type(tuple2)) # 输出结果为<class 'tuple'> --表示这个是一个元组(2,)