好好学习,天天向上!

每天看看下面的这张图片,笑一笑!

python字典元组列表 python 列表 元组 字典 集合_删除元素

心情变得愉悦起来了,进入我们的正文了。

#创建空列表、元组、集合、字典
lst = []#列表
dim = ()#元组
st = set()#集合
dic = {}#字典

列表list:

列表一些常用的函数:

#[]表示列表,并用逗号分割其中的元素,索引从0而不是1开始
#修改、添加和删除元素
lst.append(val)#在列表尾部增加元素
lst.insert(idx, val)#在列表任意位置添加新元素
del lst(idx)#删除列表idx索引下的元素
lst.pop([idx])#删除并返回索引idx(默认为结尾)的元素
lst.remove(val)#找打val在列表的位置,并删除

#组织列表
lst.sort()#永久性地修改列表元素的排序顺序
lst.reverse()#列表倒置
len(lst)#求列表长度

#切片[:]
lst = [1, 2, 3, 4]
#lst[-1] = 4
#lst[-1] = 4
#lst[2: ] = [3, 4]
#lst[1: 2] = [2, 3]

列表推导式:

下面我们求一下1-10的平方,并且把它放在一个列表中

squares = []#创建一个空列表
for value in range(1, 11):#左闭右开
    squares.append(value ** 2)

我们用以上方法来生成一个列表,会有点感觉繁琐。

接着,我们使用列表推导式来看看,一行就可以搞定!

squares = [value ** 2 for value in range(1, 11)]

下面我们接着使用列表推导式生成一个笛卡尔积:

a = ['a', 'b', 'c']
b = [1, 2, 3, 4]
ab = [(aa, bb) for aa in a for bb in b]#这里要注意缩进
#ab = [('a', 1), ('a', 2), ('a', 3), ('a', 4), ('b', 1), ('b', 2), ('b', 3), ('b', 4), ('c', 1), ('c', 2), ('c', 3), ('c', 4)]

 元组(不可变对象)tuple:

元组:看起来很像列表,但使用圆括号而非方括号来标识

变量元组:用for循环来遍历

修改元组变量:虽然不能修改元组的元素,但可以给存储元组的变量赋值

dim = (1, 2, 3)
#访问元组:可以使用下标索引来访问元组中的值。
#元组的索引下标从0开始,也可以切片。
#dim[0] = 1
#修改元组:元组是不可变对象,不允许对元组中的元组进行修改,但是可以对元组进行连接组合
dim += (4, 5)
#dim = (1, 2, 3, 4, 5)
删除元组:只能整个删除
del dim

集合set:集合中的元素是不可重复的

#创建空集合一定要用函数set()不能用{},{}会创建一个空字典
st = set()
#添加元素
st.add(val)
st.update([val,])#添加多个元素
#删除元素
st.pop()#删除第一个元素
st.remove(val)#删除指定元素
#交、并、差
s1 = {1, 2, 3}#不是空集合可以使用{}来创建集合
s2 = {3, 4, 5}
#交集
s1.intersection(s2)
#{3}
s1 & s2

#并集
s1.union(s2)
#{1, 2, 3, 4, 5}
s1 | s2
#{1, 2, 3, 4, 5}

#差集
s1.difference(s2)
s1 - (s1 & s2)
#{1, 2}
s2.difference(s1)
s2 - (s1 & s2)
#{4, 5}

#超集:
s1.issuperset(s2)#判断s1是否包含s2的全部
#False
s2.issuperset(s1)
#False

#子集:
s1.issubset(s2)#判断s1是不是s2的子集
#False
s2.issubset(s1)
#False

#判断交集
s1.isdisjoint(s2)
#False

字典dict:

创建空字典:
dic = {}
dic = dict()

 字典的常用操作:

dic = {
    'b': 1,
    'a': 3,
    'c': 2
}
#访问字典中的值
print(dic['a'])
#dic['a'] = 3

#添加(或创建)键值对
dic['d'] = 4
#dic = {'b': 1, 'a': 3, 'c': 2, 'd': 4}

#修改字典中的值
dic['b'] = 5
#dic = {'b': 5, 'a': 3, 'c': 2, 'd': 4} 

#删除键值对
del dic['d']
#dic = {'b': 5, 'a': 3, 'c': 2}

#变量字典
for key, value in dic.items():
    print(key, value)
"""
b 5
a 3
c 2
"""
#排序:字典没有sort,只能用sorted
lst = sorted(dic.items(), key = lambda x : x[0])
#lst = [('a', 3), ('b', 5), ('c', 2)]