文章目录
- 列表方法
- 增:
- 删
- 查:
- 排序:
- 直接赋值.浅拷贝.深拷贝的区别(点我了解详情)
- 列表推导式:
- del语法:
- 元组
- 集合(set)
- 快速除去列表中的重复元素(set)
- 保持原来的排序:
- 交集:共有的部分(&)
- 并集:总共的部分
- 差集:另一个集合没有的部分
- 对称差集(^):在a和b没有的
列表方法
Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能。
以下是 Python 中列表的方法:
增:
list.append(x) 把x添加到列表的结尾
list.extend(L) 两个列表合成一个,L被以字符为单位拆开,然后追加到lsit里面
list.insert(i, x) 通过列表指定的索引添加元素
例:
a=[1,2,3]
b=[5,6,7]
a.append(4)
print(a)
a.extend(b)
print(a)
a.insert(0,0)
print(a)
输出:
[1, 2, 3, 4]
[1, 2, 3, 4, 5, 6, 7]
[0, 1, 2, 3, 4, 5, 6, 7]
删
list.remove(x) 删除列表中值为 x 的第一个元素,没有这样的元素,就会返回一个错误。
list.pop(i) 删除列表索引为i的元素,返回值是被删除的值,没有指定索引,默认为最后一个元素
list.clear() 移除列表中的元素
例:
a=[1,2,3]
b=[5,6,7]
a.remove(2)
print(a)
print("===========================")
print(a.pop(0))
print(a)
print("===========================")
a.clear()
print(a)
输出:
[1, 3]
===========================
1
[3]
===========================
[]
查:
list.index(x) 返回列表中第一个值为 x 的元素的索引。没有匹配的元素就会返回一个错误。
list.count(x) 返回 x 在列表中出现的次数。
例:
a=[1,2,3,1]
b=[5,6,7]
print(a.index(2))
print(a.count(1))
输出:
1
2
排序:
list.sort() 对列表中的元素进行排序。从小到大
list.sort(reverse=True) 对列表中的元素进行排序。从大到小
list.reverse() 倒排列表中的元素。
list.copy() 返回列表的浅复制,等于a[:]。
例:
a=[1,2,3,1]
b=[5,6,7]
a.sort()
print(a)
a.reverse()
print(a)
print(a.copy())
输出:
[1, 1, 2, 3]
[3, 2, 1, 1]
[3, 2, 1, 1]
================================================================
列表推导式:
每个列表推导式都在 for 之后跟一个表达式,然后有零到多个 for 或 if 子句。返回结果是一个根据表达从其后的 for 和 if 上下文环境中生成出来的列表。如果希望表达式推导出一个元组,就必须使用括号。
b=[5,6,7]
print([i*2 for i in b])
输出:
[10, 12, 14]
del语法:
使用 del 语句可以从一个列表中依索引而不是值来删除一个元素。这与使用 pop() 返回一个值不同。可以用 del 语句从列表中删除一个切割,或清空整个列表(我们以前介绍的方法是给该切割赋一个空列表)。例如:
a = [-1, 1, 66.25, 333, 333, 1234.5]
del a[0]
print(a)
输出:
[1, 66.25, 333, 333, 1234.5]
元组
tuple:元组,可以将多样的对象集合到一起,不能修改,通过索引
语法:
tuple('元素1',元素2,元素3)
取值: 元组名[索引值]
集合(set)
set集合,python书写方式为{}.集合与列表,元组类似,可以存储多个数据,但是这些数据不能
重复, 集合对象还支持union(联合),intersection(交),difference(差)和
sysmmetrice_difference(对称差集)数学运算
快速除去列表中的重复元素(set)
list1=[1,4,2,5,3,2,4]
print ( set ( list1 ))
输出:
{1, 2, 3, 4, 5}
保持原来的排序:
list1 = [1, 4, 2, 5, 3, 2, 4]
print(sorted(set(list1), key=list1.index))
[1, 4, 2, 5, 3]
交集:共有的部分(&)
list1 = [1, 4, 2, 5, 3, 2, 4]
list2=[11,22,2,3,5,55]
a=set(list1)
b=set(list2)
print(a&b)
{2, 3, 5}
并集:总共的部分
list1 = [1, 4, 2, 5, 3, 2, 4]
list2=[11,22,2,3,5,55]
a=set(list1)
b=set(list2)
print(a | b)
{1, 2, 3, 4, 5, 11, 22, 55}
差集:另一个集合没有的部分
list1 = [1, 4, 2, 5, 3, 2, 4]
list2=[11,22,2,3,5,55]
a=set(list1)
b=set(list2)
print(a - b)
{1, 4}
对称差集(^):在a和b没有的
ist1 = [1, 4, 2, 5, 3, 2, 4]
list2=[11,22,2,3,5,55]
a=set(list1)
b=set(list2)
print(a^b)
{1, 4, 22, 55, 11}