python list用法_Python列表list使用介绍

一组有序项目的集合

可变的数据类型【可进行增删改查】

列表中可以包含任何数据类型,也可包含另一个列表【可任意组合嵌套】

列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔

列表可通过序号访问其中成员

定义

>>> 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 "", line 1, in 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 "", line 1, in 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

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值