DDR爱好者之家 Design By 杰米
一组有序项目的集合 可变的数据类型【可进行增删改查】 列表中可以包含任何数据类型,也可包含另一个列表【可任意组合嵌套】 列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔 列表可通过序号访问其中成员
定义
> l = [] #空列表 > l = [1,2,3] > l = [1,2,3,['a','b']] > l = list('linuxeye') > l ['l', 'i', 'n', 'u', 'x', 'e', 'y', 'e'] > l = list(range(5)) > l [0, 1, 2, 3, 4] > l = '1;2;3;4;5'.split(';') > l ['1', '2', '3', '4', '5']
内建函数list(a_sequence) 可以将一个序列转为列表
索引
正索引是编号是从左到右,0开始;负索引编号是从右往左,-1、-2 …;取范围值都是从左至右
> LanguageList = ['Python','Shell','Perl','PHP','java','C',"C++","Lisp"] > LanguageList[0] #取第一个值 'Python' > LanguageList[3] #第四个值 'PHP' > LanguageList[3:] ['PHP', 'java', 'C', 'C++', 'Lisp'] > LanguageList[:3] ['Python', 'Shell', 'Perl'] > LanguageList[2:5] ['Perl', 'PHP', 'java']
> LanguageList[-1] #倒数第一个值 'Lisp' > LanguageList[-2] #倒数第二个值 'C++' > LanguageList[-5:] ['PHP', 'java', 'C', 'C++', 'Lisp'] > LanguageList[-5:-2] ['PHP', 'java', 'C'] > LanguageList[:-2] ['Python', 'Shell', 'Perl', 'PHP', 'java', 'C']
增加元素
> LanguageList ['Python', 'Shell', 'Perl', 'PHP', 'java', 'C', 'C++', 'Lisp'] > LanguageList.append('GO') > LanguageList ['Python', 'Shell', 'Perl', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO'] > LanguageList.insert(3,'Python') #往PHP元素前插入 > LanguageList ['Python', 'Shell', 'Perl', 'Python', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO'] > LanguageList.extend(['Ruby','C#']) > LanguageList ['Python', 'Shell', 'Perl', 'Python', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO', 'Ruby', 'C#']
搜索
> LanguageList = ['Python', 'Shell', 'Perl', 'Python', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO', 'Ruby', 'C#'] > LanguageList.index('Python') 0 > LanguageList.index('C') 6 > LanguageList.index('c') Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: list.index(x): x not in list > 'c' in LanguageList False > LanguageList.index('Python') #统计一个元素的出现次数 2
删除元素
> LanguageList = ['Python', 'Shell', 'Perl', 'Python', 'PHP', 'java', 'C', 'C++', 'Lisp', 'GO', 'Ruby', 'C#'] > LanguageList.remove('C') > LanguageList.remove('Python') > LanguageList.remove('c') Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: list.remove(x): x not in list > LanguageList.pop() 'C#' > LanguageList ['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'GO', 'Ruby'] > LanguageList.pop(-2) ['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'Ruby'] > del LanguageList[-3:-1] > LanguageList ['Shell', 'Perl', 'Python', 'PHP', 'java', 'Ruby']
remove从列表中只删除一个值的首次出现。
pop会做两件事: 删除列表的最后一个元素, 然后返回删除元素的值。
修改元素
> LanguageList = ['Python','Shell', 'Perl', 'Python', 'PHP', 'java', 'Ruby'] > LanguageList[-2] = 'C' > LanguageList ['Python', 'Shell', 'Perl', 'Python', 'PHP', 'C', 'Ruby'] > LanguageList[LanguageList.index('C')] = 'JAVA' > LanguageList ['Python', 'Shell', 'Perl', 'Python', 'PHP', 'JAVA', 'Ruby']
运算符
> LanguageList ['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'GO', 'Ruby'] > LanguageList = LanguageList + ['Python','C'] > LanguageList ['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'GO', 'Ruby', 'Python', 'C'] > LanguageList += ['java'] > LanguageList ['Shell', 'Perl', 'Python', 'PHP', 'java', 'C++', 'Lisp', 'GO', 'Ruby', 'Python', 'C', 'java'] > NumList = [1,2,3] * 3 > NumList [1, 2, 3, 1, 2, 3, 1, 2, 3]
排序
> NumList = [2,5,3,6,1,4] > NumList.reverse() > NumList [4, 1, 6, 3, 5, 2] > NumList[::-1] #和reverse效果相同 > NumList [2, 5, 3, 6, 1, 4] > NumList.sort() > NumList [1, 2, 3, 4, 5, 6]
sort可接受参数
cmp,比较函数,接受两个参数,小于时返回负,大于返回正,相等返回0 key,指定排序键 reverse,指定是否反序
列表的比较操作 , 隐式调用cmp方法 , 比较规则是逐个扫描元素进行比较, 如果可以比较 , 则比较, 如果相等扫描下一个元素 , 如果不相等返回结果 , 如果两个元素类型不可以比较 , 就比较两个对象的 id()值。如果一直相等 ,直到一个列表扫描结束 , 那么返回较长的列表较大
> L = [(13,54),(11,59),(15,55),(12,57),(10,56)] > L.sort(key=lambda x:x[1]) > L [(13, 54), (15, 55), (10, 56), (12, 57), (11, 59)] > L.sort(key=lambda x:x[1],reverse=1) #或者reverse=True > L [(11, 59), (12, 57), (10, 56), (15, 55), (13, 54)]
sort与sorted函数区别
NumList = [2, 5, 3, 6, 1, 4] > sorted(NumList) [1, 2, 3, 4, 5, 6] > NumList [2, 5, 3, 6, 1, 4] > NumList.sort() > NumList [1, 2, 3, 4, 5, 6]
sort: 在原list上排序,不返回排序后的list
sorted: 不改变原list,返回排序后的list
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
更新日志
2024年11月25日
2024年11月25日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]