|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 小菜饼 于 2018-1-13 10:03 编辑
成员关系操作符:in 和 not in,它们只能判断一个层次的成员关系
列表分片:列表的左边和右边分别表示遍历的起始位置和终止位置(注意:包含左边但不
包含右边),步长默认为1,分片是真正意义上的拷贝
如果步长为负数,则从右往左遍历
Python列表支持负数索引:
列表内容 1 3 2 9 7 8
正常下标 0 1 2 3 4 5
负数下标 -6 -5 -4 -3 -2 -1
正常索引是从左往右,负数索引是从右往左
list1[0]和list1[0:1]一样吗?
不一样,list1[0]返回的是值,而list[0:1]返回的是列表
list1 = [3,2,9,5,7]
list2 = list1[:]与list2 = list1意思一样吗
不一样,list2是变量名,相当于一个标签,如果之后list1内的元素发生局部修改后,
list2 = list1则list2也会相应变化,而list2 = list1[:]则是真正意义上的拷贝,之
后不管list1是局部变化还是整体变化,list2始终不变(PS:局部修改就是要用列表内置方法
修改,地址并未发生变化)list2 = list1[:],本质上list2根list1地址不一样,
而list2 = list1,这两个列表
的地址一样
列表推导式:
eg:
>>> [i*i for i in range(10)]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
>>> list1 = [x**2 for x in range(10)]
>>> list1
相当于
list1 = []
for x in range(10):
list1.append(x**2)
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
>>> list1 = [(x, y) for x in range(10) for y in range(10) if x%2==0 if y%2!=0]
相当于
list = []
for x in range(10):
for y in range(10):
if x % 2 == 0:
if y % 2 != 0:
list.append((x,y))
count()方法:计算它的参数在列表中出现的次数
index()方法:返回它的参数在列表中的位置,默认返回参数第一次出现的位置(共三个
参数,后两个参数表示索引的起始位置和终止位置)
eg:
>>>list1 = [1,2,3,5,3,1,2,9,8]
>>>list.index(3)
2
>>>list.index[3,3,7]
>>>4
reverse()方法:将这个列表原地翻转
eg:
>>>list1.reverse()
>>>list1
>>>[9,8,7,6,5,4,3,2,1]
sort()方法:将列表中的所有参数按照从小到大重新排序(共三个参数,其中一个是func:指定
排序的算法,一个是key:跟这个算法搭配的关键字,这两个参数暂时不用掌握,只要知道是归
并排序就可以了,第三个参数是reverse,默认是False)
分片操作只能用于字符串、列表、元组等序列类型(整型,浮点型啥的不可以)
--2018.1.12
|
|