文章目录

  • 列表方法
  • 增:
  • 查:
  • 排序:
  • 直接赋值.浅拷贝.深拷贝的区别(点我了解详情)
  • 列表推导式:
  • 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}