python中的组合数据类型

python中有四个组合数据,分别为列表、元组、集合、字典

1、列表(list)

类型:list

特点:按照有顺序的方式储存多个可以重复的数据

声明:分为空列表的声明和非空列表的声明

#空列表的声明
x=list()
x=[]
#非空列表的声明
x=list([1,2,3])
x=[1,2,3]

列表的数据操作有增加、删除、修改、删除

(1)列表的增加

a=list([1,2,3])
a.append("hello")  #在末尾增加一个数据
print(a)
a.insert(1,"word")   #在特定位置增加数据
print(a)
a.extend([1,2])   #增加一组数据
print(a)

[out]:
[1, 2, 3, 'hello']
[1, 'word', 2, 3, 'hello']
[1, 'word', 2, 3, 'hello', 1, 2]

(2)列表的删除

a=list([1,2,3,"hello",4])   #列表的声明
del a[1]   #通过索引删除数据   del是直接删除列表
print(a)
a.pop()   #删除末尾的数据
print(a)
a.remove("hello")  #删除具体的数据
print(a)
a.clear()   #清空列表中的所有数据
print(a)

[out]:
[1, 3, 'hello', 4]
[1, 3, 'hello']
[1, 3]
[]

(3)列表的修改

a=list([1,2,3,"hello",4])
#通过索引来修改数据
a[4]="world"
print(a)

[out]:
[1, 2, 3, 'hello', 'world']

(4)列表的查询

a=list([1,2,3,"hello",4])
print(a[1])  #可以通过下标直接查看
#也可通过for循环来查询数据
for a1 in a:
    print(a1,end=",")

[out]:
2
1,2,3,hello,4,

(5)列表的其他操作

a.count(obj):查看某个指定的数据obj在列表中出现的次数

a.index(obj):查看某个指定的数据obj在列表中的位置

a.sort():数据按照自然顺序排序

a.reverse():翻转数据列表

len(a):查看列表的长度

max(a)/min(a):列出列表中最大值与最小值

2、元组(tuple)

类型:tuple

特点:可以储存多个可以重复的有顺序的,不能修改的数据

声明:空元组和非空元组的声明

#空元组的声明
t=tuple()
t=()
#非空元组的声明
t=("hello")

元组的数据操作,由于元组是不可更改的,所以数据的增加、删除、修改是不能运行的,那元组的数据操作还有

count(a):查看某个指定的数据,在元组中出现的次数

index(a):查看某个指定的数据在元组中的 位置

len(a):查看元组中元素的个数

max(a)/min(a):查看元组中的最大值/最小值

3、集合(set)

类型:set

特点:可以存放多个不能重复的没有顺序的可以修改的数据

声明:空集合与非空集合的声明

# 声明一个集合
s = set()
s = set([]) # 声明一个空集合
s = {1,2,3,4,5} # 声明一个非空集合

集合数据的增加、删除、修改、查询

(1):集合的增加

s={"hell0"} #声明一个集合
s.add("world")
print(s)

[out]:
{'world', 'hell0'}

(2)集合的删除

s={1,2,"hello","word"}
s.pop() # 随机删除一个数据
print(s)
s.remove("hello") # 删除一个具体数据
print(s)
s.clear() # 清空集合中的数据
print(s)

[out]:
{1, 2, 'hello'}
{1, 2}
set()

(3)集合的修改

#流程:查询得到数据,修改数据的值
s={1,2,"hello","word"}
if "hello" in s:
    s.remove("hello")
    s.add("olleh")
print(s)

[out]:
{'word', 1, 2, 'olleh'}

(4):集合的查询

# 查询数据:通过循环遍历~
s={1,2,"hello","word"}
for x in s:
    print(x,end=",")

[out]:
1,2,hello,word,

(5)集合的其他操作

s1 = {1,2,3,4,5}
s2 = {4,5,6,7,8}

# 并集
s1.union(s2)
# 更新操作
s1.update(s2)
print(s1)

# 差集
s1.difference(s2)
# 更新操作
s1.difference_update(s2)
print(s1)

# 交集
s1.intersection(s2)
# 更新操作
s1.intersection_update(s2)
print(s1)

[out]:
{1, 2, 3, 4, 5, 6, 7, 8}
{1, 2, 3}
{4, 5}

4、字典(dict)

类型:dict

特点:可以存放多组key-value键值对的,其中键不能重复,值可以重复的数据对

声明:空字典和非空字典

#声明一个空的字典
d=dict()  #推荐使用
d2={}

#声明一个非空的字典
d3={"key":"value","key2":"value2"}  #推荐使用
d4=dict([("k1","v1"),("k2","v2")])
d5=dict([["k1","v1"],["k2","v2"]])

字典的数据操作有增加、删除、修改、查询

(1):字典的增加

#直接添加数据
#key和value都是基本数据类型,都是字符串
d["key"]='value'
print(d)
#key是一个字符串,value是一个列表
d['admin']=["admin","123456"]
print(d)
#key是一个字符串,value是一个字典
d["manager"]={"username":"admin","passward":"123"}
print(d)

[out]:
{'key': 'value'}
{'key': 'value', 'admin': ['admin', '123456']}
{'key': 'value', 'admin': ['admin', '123456'], 'manager':{'username': 'admin', 'passward': '123'}}

#setdefault   如果字典中已经存在admin,下面的代码就无效
d.setdefault("admin","administrator")
print(d)
#setdefault  如果字典中没有,新增数据
d.setdefault("root","1223")
print(d)

[out]:
{'key': 'value', 'admin': ['admin', '123456'], 'manager': {'username': 'admin', 'passward': '123'}}
{'key': 'value', 'root': '1223', 'admin': ['admin', '123456'], 'manager': {'username': 'admin', 'passward': '123'}}

(2):字典的删除

d={'key': 'value', 'root': '1223', 'admin': ['admin', '123456'], 'manager': {'username': 'admin', 'passward': '123'}}
#删除一个指定的key值的键值对数据
d.pop('admin')
print(d)
#随机删除一个数据
print(d.popitem())
print(d)
#清空字典
d.clear()
print(d)

[out]:
{'root': '1223', 'manager': {'passward': '123', 'username': 'admin'}, 'key': 'value'}
('root', '1223')
{'manager': {'passward': '123', 'username': 'admin'}, 'key': 'value'}
{}

(3):字典的修改

d={'key': 'value', 'root': '1223', 'admin': ['admin', '123456'], 'manager': {'username': 'admin', 'passward': '123'}}
d['admin']='admin'
print(d)

d['manager']['passward']='xxx'
print(d)

[out]:
{'key': 'value', 'root': '1223', 'admin': 'admin', 'manager': {'passward': '123', 'username': 'admin'}}
{'key': 'value', 'root': '1223', 'admin': 'admin', 'manager': {'passward': 'xxx', 'username': 'admin'}}

(4):字典的查询

d={'admin': ['admin', '123456'], 'key': 'value', 'manager': {'passward': '123', 'username': 'admin'}, 'root': '1223'}
#通过key直接查询对应的value值
print(d["admin"])
print(d.get("manager"))

#循环遍历key的值
for x in d:
    print(x,':',d.get(x))
#查询字典中的key值
print(d.keys())
#查询字典中所有的value值
print(d.values())
#查询字典中的所有item[条目、键值对]值
print(d.items())

[out]:
['admin', '123456']
{'passward': '123', 'username': 'admin'}

admin : ['admin', '123456']
key : value
manager : {'passward': '123', 'username': 'admin'}
root : 1223

dict_keys(['admin', 'key', 'manager', 'root'])
dict_values([['admin', '123456'], 'value', {'passward': '123', 'username': 'admin'}, '1223'])
dict_items([('admin', ['admin', '123456']), ('key', 'value'), ('manager', {'passward': '123', 'username': 'admin'}), ('root', '1223')])

猜你喜欢

转载自blog.csdn.net/A994958/article/details/86599920
今日推荐