python数据类型元组、列表、集合、字典相互嵌套

系统

Windows 10 专业工作站版22H2

软件

python-3.9.6-amd64.exe

拓展库:
jupyter==1.0.0
notebook==7.0.6

1.元组嵌套

1.1 元组嵌套元组

try:
    tuple0 = ((1,2,3),(1,2,3),(1,2,3))
    print(tuple0,type(tuple0))
except:
    print('error')

((1, 2, 3), (1, 2, 3), (1, 2, 3)) <class 'tuple'>

1.2 元组嵌套列表

try:
    tuple0 = ([1,2,3],[1,2,3],[1,2,3])
    print(tuple0,type(tuple0))
except:
    print('error')

([1, 2, 3], [1, 2, 3], [1, 2, 3]) <class 'tuple'>

1.3 元组嵌套集合

try:
    tuple0 = ({1,2,3},{1,2,3},{1,2,3})
    print(tuple0,type(tuple0))
except:
    print('error')

({1, 2, 3}, {1, 2, 3}, {1, 2, 3}) <class 'tuple'>

1.4 元组嵌套字典

try:
    tuple0 = ({'a':1,'b':2,'c':3},{'a':1,'b':2,'c':3},{'a':1,'b':2,'c':3})
    print(tuple0,type(tuple0))
except:
    print('error')

({'a': 1, 'b': 2, 'c': 3}, {'a': 1, 'b': 2, 'c': 3}, {'a': 1, 'b': 2, 'c': 3}) <class 'tuple'>

2 列表嵌套

2.1 列表嵌套元组

try:
    list0 = [(1,2,3),(1,2,3),(1,2,3)]
    print(list0,type(list0))
except:
    print('error')

[(1, 2, 3), (1, 2, 3), (1, 2, 3)] <class 'list'>

2.2 列表嵌套列表

try:
    list0 = [[1,2,3],[1,2,3],[1,2,3]]
    print(list0,type(list0))
except:
    print('error')

[[1, 2, 3], [1, 2, 3], [1, 2, 3]] <class 'list'>

2.3 列表嵌套集合

try:
    list0 = [{1,2,3},{1,2,3},{1,2,3}]
    print(list0,type(list0))
except:
    print('error')

[{1, 2, 3}, {1, 2, 3}, {1, 2, 3}] <class 'list'>

2.4 列表嵌套字典

try:
    list0 = [{'a':1,'b':2,'c':3},{'a':1,'b':2,'c':3},{'a':1,'b':2,'c':3}]
    print(list0,type(list0))
except:
    print('error')

[{'a': 1, 'b': 2, 'c': 3}, {'a': 1, 'b': 2, 'c': 3}, {'a': 1, 'b': 2, 'c': 3}] <class 'list'>

3 集合嵌套

3.1 集合嵌套元组

try:
    set0 = {(1,2,3),(1,2,3),(1,2,3)}
    print(set0,type(set0))
except:
    print('error')

{(1, 2, 3)} <class 'set'>

3.2 集合嵌套列表

try:
    set0 = {[1,2,3],[1,2,3],[1,2,3]}
    print(set0,type(set0))
except:
    print('error')

error

3.3 集合嵌套集合

try:
    set0 = {{1,2,3},{1,2,3},{1,2,3}}
    print(set0,type(set0))
except:
    print('error')

error

3.4 集合嵌套字典

try:
    set0 = {{'a':1,'b':2,'c':3},{'a':1,'b':2,'c':3},{'a':1,'b':2,'c':3}}
    print(set0,type(set0))
except:
    print('error')

error

4 字典嵌套

4.1 字典的键嵌套

4.1.1 字典的键嵌套元组

try:
    dict0 = {(1,2,3):(1,2,3),(1,2,3):(2,3,4),(1,2,3):(3,4,5)}
    print(dict0,type(dict0))
    dict0 = {(1,2,3):(3,4,5),(1,2,3):(2,3,4),(2,3,4):(1,2,3)}
    print(dict0,type(dict0))
except:
    print('error')

{(1, 2, 3): (3, 4, 5)} <class 'dict'>

{(1, 2, 3): (2, 3, 4), (2, 3, 4): (1, 2, 3)} <class 'dict'>

4.1.2 字典的键嵌套列表

try:
    dict0 = {[1,2,3]:(1,2,3),[1,2,3]:(1,2,3),[1,2,3]:(1,2,3)}
    print(dict0,type(dict0))
except:
    print('error')

error

4.1.3 字典的键嵌套集合

try:
    dict0 = {{1,2,3}:(1,2,3),{1,2,3}:(1,2,3),{1,2,3}:(1,2,3)}
    print(dict0,type(dict0))
except:
    print('error')

error

4.1.4 字典的键嵌套字典

try:
    dict0 = {
        {'a': 1, 'b': 2, 'c': 3}:(1,2,3),
        {'a': 1, 'b': 2, 'c': 3}:(1,2,3),
        {'a': 1, 'b': 2, 'c': 3}:(1,2,3)}
    print(dict0,type(dict0))
except:
    print('error')

error

4.2 字典的值嵌套

4.2.1 字典的值嵌套元组

try:
    dict0 = {'a':(1,2,3),'b':(1,2,3),'c':(1,2,3)}
    print(dict0,type(dict0))
except:
    print('error')

{'a': (1, 2, 3), 'b': (1, 2, 3), 'c': (1, 2, 3)} <class 'dict'>

4.2.2 字典的值嵌套列表

try:
    dict0 = {'a':[1,2,3],'b':[1,2,3],'c':[1,2,3]}
    print(dict0,type(dict0))
except:
    print('error')

{'a': [1, 2, 3], 'b': [1, 2, 3], 'c': [1, 2, 3]} <class 'dict'>

4.2.3 字典的值嵌套集合

try:
    dict0 = {'a':{1,2,3},'b':{1,2,3},'c':{1,2,3}}
    print(dict0,type(dict0))
except:
    print('error')

{'a': {1, 2, 3}, 'b': {1, 2, 3}, 'c': {1, 2, 3}} <class 'dict'>

4.2.4 字典的值嵌套字典

try:
    dict0 = {
        'a':{'a':1,'b':2,'c':3},
        'b':{'a':1,'b':2,'c':3},
        'c':{'a':1,'b':2,'c':3}}
    print(dict0,type(dict0))
except:
    print('error')

{'a': {'a': 1, 'b': 2, 'c': 3}, 'b': {'a': 1, 'b': 2, 'c': 3}, 'c': {'a': 1, 'b': 2, 'c': 3}} <class 'dict'>

5 总结

5.1 文字总结

1.可变类型数据不能作为集合的元素和字典的键。

2.集合和字典自身的去重特性导致嵌套时的输入值可能不等于输出值。

5.2 表格总结

| | 被嵌套的数据类型 ||||

元组 列表 集合 字典
元组 保留输入 保留输入 保留输入 保留输入
列表 保留输入 保留输入 保留输入 保留输入
集合 去重输入 error error error
字典的键 去重输入 error error error
字典的值 保留输入 保留输入 保留输入 保留输入
集合 相同元素仅保留一个
字典的键 键相同时,后键值重写前键值。
相关推荐
AIAdvocate17 分钟前
Pandas_数据结构详解
数据结构·python·pandas
小言从不摸鱼19 分钟前
【AI大模型】ChatGPT模型原理介绍(下)
人工智能·python·深度学习·机器学习·自然语言处理·chatgpt
FreakStudio2 小时前
全网最适合入门的面向对象编程教程:50 Python函数方法与接口-接口和抽象基类
python·嵌入式·面向对象·电子diy
redcocal3 小时前
地平线秋招
python·嵌入式硬件·算法·fpga开发·求职招聘
artificiali4 小时前
Anaconda配置pytorch的基本操作
人工智能·pytorch·python
RaidenQ4 小时前
2024.9.13 Python与图像处理新国大EE5731课程大作业,索贝尔算子计算边缘,高斯核模糊边缘,Haar小波计算边缘
图像处理·python·算法·课程设计
花生了什么树~.4 小时前
python基础知识(六)--字典遍历、公共运算符、公共方法、函数、变量分类、参数分类、拆包、引用
开发语言·python
Trouvaille ~5 小时前
【Python篇】深度探索NumPy(下篇):从科学计算到机器学习的高效实战技巧
图像处理·python·机器学习·numpy·信号处理·时间序列分析·科学计算
爆更小小刘5 小时前
Python基础语法(3)下
开发语言·python
哪 吒5 小时前
华为OD机试 - 第 K 个字母在原来字符串的索引(Python/JS/C/C++ 2024 E卷 100分)
javascript·python·华为od