• Python列表与字典


    列表:
    #在[]内用逗号分隔,可以存放n个任意类型的值 定义:students=['egon','alex','wupeiqi',] #students=list(['egon','alex','wupeiqi',]) 用于标识:存储多个值的情况,比如一个人有多个爱好
    例如:
    #存放多个学生的信息:姓名,年龄,爱好
    >>> students_info=[['egon',18,['play',]],['alex',18,['play','sleep']]]
    >>> students_info[0][2][0] #取出第一个学生的第一个爱好
    'play'


    字典:
    1,#为何还要用字典?
    存放一个人的信息:姓名,性别,年龄,很明显是多个值,既然是存多个值,我们完全可以基于刚刚学习的列表去存放,如下
    >>> info=['egon','male',18]
    定义列表的目的不单单是为了存,还要考虑取值,如果我想取出这个人的年龄,可以用
    >>> info[2]
    18
    但这是基于我们已经知道在第3个位置存放的是年龄的前提下,我们才知道索引2对应的是年龄
    即:
            #name, sex, age
    info=['egon','male',18]
    而这完全只是一种假设,并没有真正意义上规定第三个位置存放的是年龄,于是我们需要寻求一种,即可以存放多个任意类型的值,又可以硬性规定值的映射关系的类型,比如key=value,这就用到了字典
    2,#在{}内用逗号分隔,可以存放多个key:value的值,value可以是任意类型
    定义:info={'name':'egon','age':18,'sex':18} #info=dict({'name':'egon','age':18,'sex':18})
    用于标识:存储多个值的情况,每个值都有唯一一个对应的key,可以更为方便高效地取值


    例如:字典的嵌套
    info={
        'name':'egon',
        'hobbies':['play','sleep'],
        'company_info':{
            'name':'Oldboy',
            'type':'education',
            'emp_num':40,
        }
    }
    print(info['company_info']['name']) #取公司名
    
    
    students=[
        {'name':'alex','age':38,'hobbies':['play','sleep']},
        {'name':'egon','age':18,'hobbies':['read','sleep']},
        {'name':'wupeiqi','age':58,'hobbies':['music','read','sleep']},
    ]
    print(students[1]['hobbies'][1]) #取第二个学生的第二个爱好




  • 相关阅读:
    RPC中阻塞队列的作用
    记用tensorflow-ranking时的bugs
    JDK作泛型比较时为什么把逻辑代码写两遍
    Java 不能声明泛型数组
    QuickSort Hoare vs Lomuto
    Java 对数组扩容
    Java交换两对象的问题
    毕业 失业
    dependencyManagement介绍
    web笔记
  • 原文地址:https://www.cnblogs.com/python654/p/8005068.html
Copyright © 2020-2023  润新知