--------------Class notes------------------
1.数组有一个基本要求,就是你所放在一起的数据必须类型一致。由于Python的变量没有数据类型,也就是说,Python是没有数组的。
--------------HOMEWORK------------------
0.列表都可以存放一些什么东西?
answer:python的列表是一个‘’打了激素‘’的数组,如果把数组比做一个集装箱,那列表就是一个大仓库,他可以存放我们已经学过的任何数据类型,包括int,float,string,array...
1.向列表增加元素有哪些方法?
answer:append(),extend(),insert()
append()只接受一个参数,且默认添加到列表的末尾:
e.g.:
>>> number = [1,2,3,4,5]
>>> number.append(6)
>>> number
[1, 2, 3, 4, 5, 6]
extend()也只接受一个参数,但这个参数必须是列表,因为它用一个列表来扩展另一个列表
e.g.:
>>> number.extend([7,8])
>>> number
[1, 2, 3, 4, 5, 6, 7, 8]
insert()接收两个参数,第一个参数代表在列表中的位置,第二个参数是在这个位置插入的元素
e.g.:
>>> number.insert(0,0)
>>> number
[0, 1, 2, 3, 4, 5, 6, 7, 8]
2.append() 方法和 extend() 方法都是向列表的末尾增加元素,请问他们有什么区别?
answer:
append()只接受一个参数,且默认添加到列表的末尾:
e.g.:
>>> number = [1,2,3,4,5]
>>> number.append(6)
>>> number
[1, 2, 3, 4, 5, 6]
extend()也只接受一个参数,但这个参数必须是列表,因为它用一个列表来扩展另一个列表
e.g.:
>>> number.extend([7,8])
>>> number
[1, 2, 3, 4, 5, 6, 7, 8]
3.member.append([‘竹林小溪’, ‘Crazy迷恋’]) 和 member.extend([‘竹林小溪’, ‘Crazy迷恋’]) 实现的效果一样吗?
answer:不一样
>>> member.append(['竹林小溪', 'Crazy迷恋'])
>>> member
['小甲鱼', '小布丁', '黑夜', '迷途', '怡静', '福禄娃娃', ['竹林小溪', 'Crazy迷恋']]
>>> member = ['小甲鱼', '小布丁', '黑夜', '迷途', '怡静', '福禄娃娃']
>>> member.extend(['竹林小溪', 'Crazy迷恋'])
>>> member
['小甲鱼', '小布丁', '黑夜', '迷途', '怡静', '福禄娃娃', '竹林小溪', 'Crazy迷恋']
4.有列表 name = [‘F’, ‘i’, ‘h’, ‘C’],如果小甲鱼想要在元素 ‘i’ 和 ‘h’ 之间插入元素 ‘s’, 应该使用什么方法来插入?
answer:
>>> name = ['F', 'i', 'h', 'C']
>>> name.insert(2,'s')
>>> name
['F', 'i', 's', 'h', 'C']
Practice
0.自己动手试试看,并分析在这种情况下,向列表添加数据应当采用哪种方法比较好?
假设给定以下列表: member = [‘小甲鱼’, ‘黑夜’, ‘迷途’, ‘怡静’, ‘秋舞斜阳’]
要求将列表修改为: member = [‘小甲鱼’, 88, ‘黑夜’, 90, ‘迷途’, 85, ‘怡静’, 90, ‘秋舞斜阳’, 88]
方法一:使用 insert() 和 append() 方法修改列表;
方法二:重新创建一个同名字的列表覆盖;
answer:
方法一:
>>> member = ['小甲鱼', '黑夜', '迷途', '怡静', '秋舞斜阳']
>>> member.insert(1,88)
>>> member.insert(3,90)
>>> member.insert(5,85)
>>> member.insert(7,90)
>>> member.append(88)
>>> member
['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88]
方法二:
member = ['小甲鱼',88,'黑夜',90,'迷途',85,'怡静',90,'秋舞斜阳',88]
这种情况下,方法二似乎好一点!
1.利用 for 循环打印上边 member 列表中的每个内容
Code:
member = ['小甲鱼',88,'黑夜',90,'迷途',85,'怡静',90,'秋舞斜阳',88]
for i in member:
print(i)
result:
小甲鱼
88
黑夜
90
迷途
85
怡静
90
秋舞斜阳
88
2. 上一题打印的样式不是很好,能不能修改一下代码打印成下图的样式呢?【请至少使用两种方法实现】
Code:
#method 1:
member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88] for each in range(len(member)): if each % 2 == 0: print(member[each],member[each + 1])
result:
小甲鱼 88
黑夜 90
迷途 85
怡静 90
秋舞斜阳 88
#method 2:
member = ['小甲鱼', 88, '黑夜', 90, '迷途', 85, '怡静', 90, '秋舞斜阳', 88] length = len(member) i = 0 while i < length: print(member[i],member[i + 1]) i += 2
result 2:
小甲鱼 88
黑夜 90
迷途 85
怡静 90
秋舞斜阳 88