• python 数据类型_字典和集合


    字典     一个key值 对应一个value值

    定义

    mydict1 = {'name':'a','age':21}
    mydict2 = dict()

    取值

    >>> mydict1["name"]
    'a'

    >>> {"name":{"1":"aa","2":'bb'}}["name"]["1"]
    'aa'

    .get(key, 0)     取值

    >>> mydict1.get("name")
    'a'

    赋值

    >>> mydict2["ee"] = "aaa"

    in 是否在里面

    >>> "name" in mydict1
    True

    >>> "fname" in mydict1
    False

    .keys()            #返回字典键的列表

    >>> mydict1.keys()
    dict_keys(['name', 'age'])

    .values()            #返回字典值的列表
    >>> mydict1.values()
    dict_values(['a', 21])

    .items() 

    >>> mydict1.items()
    dict_items([('name', 'a'), ('age', 21)])

    .update(dict2)     #增加合并字典

    >>> mydict1.update({"sex":"nan"})
    >>> mydict1
    {'name': 'a', 'age': 21, 'sex': 'nan'}

    .clear()           #清空字典,同del(dict)

    .copy()            #拷贝字典

    .cmp(dict1,dict2)  #比较字典,(优先级为元素个数、键大小、键值大小)
                        #第一个大返回1,小返回-1,一样返回0

    dictionary的复制
    dict1 = dict            #别名    浅拷贝   指针直接指向

    >>> dict1 = mydict1
    >>> id(dict1)
    1751728577272
    >>> id(mydict1)
    1751728577272


    dict2=dict.copy()   #克隆,即另一个拷贝。 新的字典内存空间

    >>> dict2 = mydict1.copy()
    >>> id(dict2)
    1751728577344
    >>> id(mydict1)
    1751728577272

     但是字典内的元素地址还是一样的

    >>> id(dict1["a"])
    2564442425248
    >>> id(dict2["a"])
    2564442425248

    使用deepcopy 元素以及变量都是新的地址

    import copy

    copy.deepcopy方法

    set集合 每一项只能是唯一的

    myset = set()

    >>> type(myset)
    <class 'tuple'>

    >>> myset2 = {'a','b','c'}
    >>> type(myset2)
    <class 'set'>

    add(),添加元素

    >>> myset2.add("d")
    >>> myset2
    {'b', 'a', 'd', 'c'}

    >>> myset2.remove("d")
    >>> myset2
    {'b', 'a', 'c'}

    clear() 清空 

    >>> myset.clear()
    >>> myset
    set()

    pop() 弹出一个 随机的

    >>> myset2.pop()
    'b'
    >>> myset2.pop()
    'a'

    >>> myset2
    {'c'}

    copy() 和字典一样

  • 相关阅读:
    三.php变量赋值和销毁
    四.php运算符(1)算术运算符
    四.php运算符(2)比较运算符
    四.php运算符(4)逻辑运算符
    extjs与后台交互
    EXT2.0 form实例
    SQL Server 2005 中的计算字段
    extJSitemselector的使用
    操作二进制数据
    Extjs Itemselector的使用示例
  • 原文地址:https://www.cnblogs.com/hywhyme/p/11571525.html
Copyright © 2020-2023  润新知