Python之列表
# 创建一个空的列表 empty = [] empty
输出结果为:
[]
列表的创建
# 创建一个统一类型的列表 number = [1, 2, 3, 4, 5] number
输出结果为:
[1, 2, 3, 4, 5]
# 创建混合类型的列表 mix = [1, 2, 3, 1997/8/20, "生日", ["周", "庄"]] mix
输出结果为:
[1, 2, 3, 12.48125, '生日', ['周', '庄']]
列表的插入
# append 方法只能有一个参数,且只能添加一个元素,且元素不能为列表 names.append("雅") names
输出结果为:
['周', '儿', '康', '庄', '尔', '雅']
# 使用 extend 方法可以同时拓展多个内容,但是extend 只能有一个参数,所以多个内容得是列表形式 names.extend(['雅', "海"]) names
输出结果为:
['周', '儿', '康', '庄', '尔', '雅', '海']
# 使用 insert 方法来指定位置,插入元素,众所周知的是,index 基本都是从 0 开始的,python 也不例外 # insert 有两个参数,insert(index, elem) 第一个参数为位置,第二个参数为需插入的元素 names.insert(1, "第一个插入的元素") names
输出结果为:
['周', '第一个插入的元素', '儿', '康', '庄', '尔', '雅', '海']
# 对于列表而言,首先得先有一个列表,然后获取列表中的某个元素 list = ['123', 'zhou', ['123', '这是列表中的列表']] list[2]
输出结果为:
['123', '这是列表中的列表']
列表的删除
# 从列表中删除元素,remove 方法只能删除元素(在知道元素的情况下) list.remove('zhou') list
输出结果为:
['123', ['123', '这是列表中的列表']]
# del 是一个语句,可以删除列表中指定下标的元素,也可以删除整个列表 del list[1] list
输出结果为:
['123']
# pop 方法则是从列表中弹出某个元素,若不指定index 的话,则默认弹出最后一个元素
list.pop()
list
输出结果为:
[]
三种从列表中删除元素的比较:
(1)remove 方法意在删除重复的内容
(2)del 语句则是通用的
(3)pop()方法则是对列表比较通用
列表的切片
对于一个列表而言,其中可以包含各种各样的内容,使用下标来获取元素的话,只能每次都获取一个元素;若想要一次性获取多个元素的话,则需要使用切片的方法
列表的切片即获取列表中的某个部分,形如 list[startIndex:endIndex],若 startIndex 不写的话,则默认从 0 开始;若 endIndex 不写的话,则默认
截取到最后一个元素;若 startIndex 和 endIndex 都不写的话,则默认复制一个同样的列表
list2 = [1, 2, 3, 4, 5, 6, 7, 8, 9] list3 = list2[1:3] list4 = list2[:5] list5 = list2[5:] list6 = list2[:]
结果为:
[2, 3]
[1, 2, 3, 4, 5]
[6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
列表的常用操作符
# 元素个数相同的情况下
list1 = [123, 234] list2 = [123, 345] list1 < list2
结果为:
True
列表中的比较是通过每个元素之间的比较的
# 前几位元素相同,且元素个数不同的情况下 list3 = [1, 2, 3, 4, 5] list4 = [1, 2, 3, 4] list3 < list4
结果为:
False
# 前几位元素不同,且元素个数不同的情况下 list3 = [1, 1, 3, 4, 5] list4 = [1, 2, 3, 4] list3 > list4
结果为:
False
因为 list3 中出现了比 list 4 小的元素
# 列表的 * 使用,可以重复添加内容 list = ["我好帅"] list1 = list*3 list1
结果为:
['我好帅', '我好帅', '我好帅']
列表的其他常用方法
# 列表的其他常用方法,sort 和 reverse list = [0, 10, 6, 8, 23, 69, 198] # 列表的反转 list.reverse() # 列表的排序,默认排序为从小到大 list.sort() # 列表的从大到小的排序 list.sort(reverse=True)
结果为:
[198, 69, 23, 8, 6, 10, 0]
[0, 6, 8, 10, 23, 69, 198]
[198, 69, 23, 10, 8, 6, 0]