C语言中的数组是一组同类型的元素,如score=[12,13,14]。而python中的列表则可以是不同类型元素的序列。如list1 = [‘physics’, ‘chemistry’, 1997, 2000]。熟练准确掌握列表的函数和方法,是python编程的基础。
文章目录- 1、 列表元素的访问
- 2、 列表元素的增删更新
- 3、 列表函数
- 4、列表的方法(MethodType)
list = ['physics', 'chemistry', 1997, 2000] print(list) print(list[1],'n',list[-2]) print(list[0:2]) print(list[1:-1])
实例结果如下:
['physics', 'chemistry', 1997, 2000] chemistry 1997 ['physics', 'chemistry'] ['chemistry', 1997]2、 列表元素的增删更新
list = ['physics', 'chemistry', 1997, 2000]
print(list)
del list[1]
print(list)
list.append('mathematics')
print(list)
得到输出结果:
['physics', 'chemistry', 1997, 2000] ['physics', 1997, 2000] ['physics', 1997, 2000, 'mathematics']
注意,append()方法一次只能增加一个元素,如果需要增加多个元素,可以采用extend()方法。
3、 列表函数常用的三个函数:len()、max()、min()
list1,list2=['chinese','mathematics','English','physics','biology','history'],[110,119,135,91,91,86]
print("高考科目数: ",len(list1))
print("科目最小值:",min(list1))
print("科目最大值:",max(list1))
print("分数最大值:",max(list2))
输出结果为:
高考科目数: 6 科目最小值: English 科目最大值: physics 分数最大值: 135
注意,列表中字符串的大小比较是类似姓氏笔画排序法,只是根据的是字符串字母的ASCII码进行排序。
4、列表的方法(MethodType)python中的函数func()和方法obj.func()是有一定的区别的,至少在调用方式上有直观地区别。列表list的常用方法包括:
| 方法 | 说明 |
|---|---|
| list.append(obj) | 在列表list末尾添加一个新的对象obj |
| list.extend(seq) | 在列表list末尾一次性追加另一个序列seq中的多个值(用新列表扩展原来的列表) |
| list.count(obj) | 统计某个元素obj在列表list出现的次数 |
| list.index(obj) | 从列表中找出某个值第一个匹配项的索引位置 |
| list.insert(index, obj) | 将对象插入列表中指定位置 |
| list.pop([index=-1]) | 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 |
| list.remove(obj) | 移除列表中某个值的第一个匹配项 |
| list.reverse() | 反向列表中元素 |
| list.sort( key=None, reverse=False) | 对原列表进行排序 |
| list.clear() | 清空列表 |
| list.copy() | 复制列表 |
举个例子:
list1,list2=['chinese','mathematics','English','physics','biology','history'],[110,119,135,91,91,86]
print(list1)
list1.extend(list2) # list扩展
print("列表连接:",list1)
list1.insert(6,'SCORE') # 定点插入
print("插入位置:",list1)
list1.pop(6) # 定点删除
print("删除位置:",list1)
list1.remove('biology') # 搜索删除
print("删除值:",list1)
list1.reverse()
print("反向:",list1)
list2.sort() # 不同类型列表如list1合并后,无法排序
print("排序:",list2)
print(list1.index('English'))
输出结果:
['chinese', 'mathematics', 'English', 'physics', 'biology', 'history'] 列表连接: ['chinese', 'mathematics', 'English', 'physics', 'biology', 'history', 110, 119, 135, 91, 91, 86] 插入位置: ['chinese', 'mathematics', 'English', 'physics', 'biology', 'history', 'SCORE', 110, 119, 135, 91, 91, 86] 删除位置: ['chinese', 'mathematics', 'English', 'physics', 'biology', 'history', 110, 119, 135, 91, 91, 86] 删除值: ['chinese', 'mathematics', 'English', 'physics', 'history', 110, 119, 135, 91, 91, 86] 反向: [86, 91, 91, 135, 119, 110, 'history', 'physics', 'English', 'mathematics', 'chinese'] 排序: [86, 91, 91, 110, 119, 135] 8
注意list.sort()是个高阶方法,可以用自定义函数进行排序方法制定,可以确定升序或者降序排列。



