列表
Python 序列的基础操作
1.序列的索引
从左往右:0 1 2 3 4
从右往左:-1 -2 -3 -4
2.序列相加
Python中列表的功能相当强大,两个列表的拼接直接相加即可:
list1 = ["炒酸奶","红烧肉"]
list2 = ["鱼香肉丝","烤冷面"]
print(list1+list2)
得到结果:
['炒酸奶', '红烧肉', '鱼香肉丝', '烤冷面']
3.序列相乘
得到一个重复次数的列表:
list1 = ['Hello']
print(list1*3)
得到
['Hello', 'Hello', 'Hello']
4.元素检查
语法格式:
value in sequence
如果在列表中,则返回Ture,与之相对的是not in,若不在列表返回True,反之则False。
5.切片※
语法格式:
sname [start:end:step]
#start 为开始位置,不指定则默认0
#end 表示截止位置,不指定则默认为序列长度
#step 步长,不指定则连续访问
!易错点辨析!
如果是list1 = list2则该拷贝是一种浅拷贝,仅仅是一种指针形式由list1指向2,而将切片列表中省略只留[:],如:list3[:]表示复制整个名称为list3的序列。
列表的计算与应用
1.列表函数
- list() 将序列强制转化成列表
- str() 序列转换为字符串
- sum()求和
- sort(),sorted()排序,会重点说明。
- reversed()直接翻转列表
- enumerate()将序列组合为索引序列
list(data)举例
list(range(10,20,2))
得到列表
[10,12,14,16,18]
关于sort()和sorted(),先讨论sort()函数,其基本用法:
listname.sort(key= ,reverse= )
- listname.sort是排序函数的使用
- key提取关键字,比如key=str.lower表示在排序是不区分大小写,因为默认状态下对英文字符串排序先排大写再排小写,这与ASCII码有关
- reverse如果指定为True,则排序后会再翻转列表
sorted()在用法上与其完全一致,唯一不同点是sorted()会建立一个原列表的副本,该副本为排序后的列表,还是相当于深拷贝与浅拷贝的概念。