python_列表基础

列表的增删改查

>>> a=[]

#在列表末尾增加某个元素

>>> a.append(1)
>>> a
[1]

#在列表的指定位置插入某个元素
 

>>> a.insert(0,2)
>>> a
[2, 1]

#修改某个位置的元素值

>>> a[0]=3
>>> a
[3, 1]

#删除列表的某个元素

1.#remove()只能删除该元素一次
 

>>> a=[1,3,1,4]
>>> a.remove(1)
>>> a
[3, 1, 4]

2.删除该列表中的所出现的所有的某元素

方法1:
 

>>> a = [1, 1, 2, 3]
>>> for i in range(a.count(1)):
...     a.remove(1)
...
>>> a
[2, 3]

方法2:

>>> a = [1, 1, 2, 3]
>>> while 1:
...     try:
...         a.remove(1)
...     except:
...         break

3.删除某索引位置的元素

>>> a=[1,2,3]
>>> del(a[0])
>>> a
[2, 3]
>>> a=[2,3]
>>> a.pop(0)
2
>>> a
[3]

列表的排序

原地排序sort()---该方法会改变原序列并且无返回值

key定义排序规则,reverse定义升序[默认排序](reverse=False)和降序(reverse=True)

>>> a=[1,-1,2,-1]
>>> print(a.sort())
None
>>> a
[-1, -1, 1, 2]
#原地反转reverse()
>>> a.reverse()
>>> a
[2, 1, -1, -1]
#按照序列里各元素的长度排序
>>> a=['1','123','2341']
>>> def func(x):
...     return len(x)
...
>>> a.sort(key=func,reverse=True) #直接对原列表进行操作
>>> a
['2341', '123', '1']
>>> b=[(1,), (1, 1), (2, 2), (1, 2, 3)]
>>> b.sort(key=func,reverse=True)
>>> b
[(1, 2, 3), (1, 1), (2, 2), (1,)]

#按照元组的第一个数字排序
>>> a = [(-1,),(1,1),(-2,2,3),(2,2)]
>>> def func(b):
...     return b[0]
...
>>> a.sort(key = func)
>>> print(a)
[(-2, 2, 3), (-1,), (1, 1), (2, 2)]

sorted(iterable, /, *, key=None, reverse=False)----不改变原列表,返回一个按照规则排序的新列表

Return a new list containing all items from the iterable in ascending order.

>>> lst=['abc','cbd','bad']
>>> def func(x):
...     return x[0]
...
>>> sorted(lst,key=func,reverse=True)#不改变原列表
['cbd', 'bad', 'abc']
>>> lst
['abc', 'cbd', 'bad']
>>>

#拼接列表

>>> [1]+[2]+[3]
[1, 2, 3]
>>> [8]*4
[8, 8, 8, 8]
>>> 8 in [1,2,8]
True
>>> 8 not in [1,2,8]
False

#扩展列表

>>> a=[1,2,3]
>>> a.append([4,5])
>>> a
[1, 2, 3, [4, 5]]
>>> a=[1,2,3]
>>> a.extend([4,5])
>>> a
[1, 2, 3, 4, 5]

#求列表的最大值

>>> max([1,2,5])
5

#求列表的最小值

>>> min([1,2,5])
1

#list()---工厂类---将一个可迭代对象转换成列表

 list(iterable) -> new list initialized from iterable's items

>>> list((1,2,4))
[1, 2, 4]
>>> list({1:"a",2:"b"})#字典转换成列表,返回的是字典key的列表
[1, 2]
>>> list("abc")
['a', 'b', 'c']

#type(object) -> the object's type

>>> type(a)

<class 'list'>

#isinstance用来判断目标对象是不是属于该对象类型,即该对象是否是该类的实例,常用作判断某对象的类型使用
>>> isinstance(a,list)
True

#以坐标遍历列表
>>> for i in range(len(a)):
...     print(a[i])
...
1
2
3

#倒序遍历
>>> for i in range(len(a)-1,-1,-1):
...     print(a[i])

#取奇数坐标位置的元素
>>> for i in range(1,len(a),2):
...     print(a[i])

#取偶数坐标位置的元素
>>> for i in range(0,len(a),2):
...     print(a[i])

#统计某个元素出现的次数
>>> a.count(2)
1

猜你喜欢

转载自blog.csdn.net/wqq5321/article/details/82901764
今日推荐