字典的key内部转为哈希值进行保存,key值唯一,且不能是字典、列表;value没有限制

字典是无序的

d1={"d11":"v11","d22":"v22",(1,2,3):[11,22,33],}

print(di["d11"])--->v11#输入key值,查询value,没有则报错

class dict(object):
"""
dict() -> new empty dictionary
dict(mapping) -> new dictionary initialized from a mapping object's
(key, value) pairs
dict(iterable) -> new dictionary initialized as if via:
d = {}
for k, v in iterable:
d[k] = v
dict(**kwargs) -> new dictionary initialized with the name=value pairs
in the keyword argument list. For example: dict(one=1, two=2)
"""
def clear(self): # real signature unknown; restored from __doc__
""" D.clear() -> None. Remove all items from D. """
#清除字典所有键值对
#kk= {"k1":"v1","k2":"v2","k3":"v3",}

#kk.clear()
#print(kk)--->{}
pass

def copy(self): # real signature unknown; restored from __doc__
""" D.copy() -> a shallow copy of D """
#浅拷贝字典

pass

@staticmethod # known case
def fromkeys(*args, **kwargs): # real signature unknown
""" Returns a new dict with keys from iterable and values equal to value. """
#传入可迭代对象作为key,第二个参数作为values,不输入默认为None
#print(dict.fromkeys(("q1","q2","q3",("12",22)),"im values"))--->{'q1': 'im values', 'q2': 'im values', 'q3': 'im values', ('12', 22): 'im values'}
pass

def get(self, k, d=None): # real signature unknown; restored from __doc__
""" D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None. """
#根据key获取值,可以指定返回值,没有默认返回None
#d1={"d11":"v11","d22":"v22",(1,2,3):[11,22,33],}
#print(d1.get("d11","hhh"))--->v11
#print(d1.get(555,"hhh"))--->hhh
pass

def items(self): # real signature unknown; restored from __doc__
""" D.items() -> a set-like object providing a view on D's items """
#打印字典的键值对
#d1={"d11":"v11","d22":"v22",(1,2,3):[11,22,33],}
#for k ,v in d1.items():
#  print(k,v)--->d11 v11
           d22 v22
           (1, 2, 3) [11, 22, 33]

pass

def keys(self): # real signature unknown; restored from __doc__
""" D.keys() -> a set-like object providing a view on D's keys """
#打印字典的所有keys
#d1 = {"d11": "v11", "d22": "v22", (1, 2, 3): [11, 22, 33], }
#print(d1.keys())--->dict_keys(['d11', 'd22', (1, 2, 3)])
pass

def pop(self, k, d=None): # real signature unknown; restored from __doc__
"""
D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
If key is not found, d is returned if given, otherwise KeyError is raised
"""
#删除指定的KEY值,并能获取到删除的value
#d1={"d11":"v11","d22":"v22",(1,2,3):[11,22,33],}
#v=d1.pop("d11")
#print(d1,v)--->{'d22': 'v22', (1, 2, 3): [11, 22, 33]} v11
pass

def popitem(self): # real signature unknown; restored from __doc__
"""
D.popitem() -> (k, v), remove and return some (key, value) pair as a
2-tuple; but raise KeyError if D is empty.
"""
#删除字典的一对键值对,并返回删除的键值对;一般删除最后一个,不用传入参数,
#d1 = {"d11": "v11", "d22": "v22", (1, 2, 3): [11, 22, 33], "sdfsd":"sdffff","zzz":"ssss",}
#v=d1.popitem()
#print(d1,v)--->{'d11': 'v11', 'd22': 'v22', (1, 2, 3): [11, 22, 33], 'sdfsd': 'sdffff'} ('zzz', 'ssss')
pass

def setdefault(self, k, d=None): # real signature unknown; restored from __doc__
""" D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D """
#设置key对应values,如果key已经存在不设置values,并获取key对应的值;如果key不存在,创建键值对
#d1 = {"d11": "v11", "d22": "v22", (1, 2, 3): [11, 22, 33], }
#m=d1.setdefault("d11","got it")
#print(d1,m)--->{'d11': 'v11', 'd22': 'v22', (1, 2, 3): [11, 22, 33]} v11
#v=d1.setdefault("d33","newinsert")
#print(d1,v)--->{'d11': 'v11', 'd22': 'v22', (1, 2, 3): [11, 22, 33], 'd33': 'newinsert'} newinsert
pass

def update(self, E=None, **F): # known special case of dict.update
"""
D.update([E, ]**F) -> None. Update D from dict/iterable E and F.
If E is present and has a .keys() method, then does: for k in E: D[k] = E[k]
If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v
In either case, this is followed by: for k in F: D[k] = F[k]
"""
#更新字典,已经存在key则更新values,不存在key则创建键值对;两种写法
#d1 = {"d11": "v11", "d22": "v22", (1, 2, 3): [11, 22, 33], }

#写法一:
#d1.update({'k1':"kkk1","d11":"new d11"})
#print(d1)--->{'d11': 'new d11', 'd22': 'v22', (1, 2, 3): [11, 22, 33], 'k1': 'kkk1'}
#写法二:

#d1.update(k1="kkk1",d11="new d11")#key不用加引号
#print(d1)--->{'d11': 'new d11', 'd22': 'v22', (1, 2, 3): [11, 22, 33], 'k1': 'kkk1'}
pass

def values(self): # real signature unknown; restored from __doc__
""" D.values() -> an object providing a view on D's values """
#打印字典的所有values
#d1 = {"d11": "v11", "d22": "v22", (1, 2, 3): [11, 22, 33], }
#print(d1.values())--->dict_values(['v11', 'v22', [11, 22, 33]])
pass

def __contains__(self, *args, **kwargs): # real signature unknown
""" True if D has a key k, else False. """
pass

def __delitem__(self, *args, **kwargs): # real signature unknown
""" Delete self[key]. """
pass

def __eq__(self, *args, **kwargs): # real signature unknown
""" Return self==value. """
pass

def __getattribute__(self, *args, **kwargs): # real signature unknown
""" Return getattr(self, name). """
pass

def __getitem__(self, y): # real signature unknown; restored from __doc__
""" x.__getitem__(y) <==> x[y] """
pass

def __ge__(self, *args, **kwargs): # real signature unknown
""" Return self>=value. """
pass

def __gt__(self, *args, **kwargs): # real signature unknown
""" Return self>value. """
pass

def __init__(self, seq=None, **kwargs): # known special case of dict.__init__
"""
dict() -> new empty dictionary
dict(mapping) -> new dictionary initialized from a mapping object's
(key, value) pairs
dict(iterable) -> new dictionary initialized as if via:
d = {}
for k, v in iterable:
d[k] = v
dict(**kwargs) -> new dictionary initialized with the name=value pairs
in the keyword argument list. For example: dict(one=1, two=2)
# (copied from class doc)
"""
pass

def __iter__(self, *args, **kwargs): # real signature unknown
""" Implement iter(self). """
pass

def __len__(self, *args, **kwargs): # real signature unknown
""" Return len(self). """
pass

def __le__(self, *args, **kwargs): # real signature unknown
""" Return self<=value. """
pass

def __lt__(self, *args, **kwargs): # real signature unknown
""" Return self<value. """
pass

@staticmethod # known case of __new__
def __new__(*args, **kwargs): # real signature unknown
""" Create and return a new object. See help(type) for accurate signature. """
pass

def __ne__(self, *args, **kwargs): # real signature unknown
""" Return self!=value. """
pass

def __repr__(self, *args, **kwargs): # real signature unknown
""" Return repr(self). """
pass

def __setitem__(self, *args, **kwargs): # real signature unknown
""" Set self[key] to value. """
pass

def __sizeof__(self): # real signature unknown; restored from __doc__
""" D.__sizeof__() -> size of D in memory, in bytes """
pass

__hash__ = None
优质内容筛选与推荐>>
1、Java多态的一些陷阱
2、【Redis】Redis由浅入深代码示例
3、JavaScript内置对象-Object
4、BZOJ3434 WC2014时空穿梭(莫比乌斯反演)
5、[leetcode-25-Reverse Nodes in k-Group]


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号