1.Field类简介
①Field对象指明了每个字段的元数据(任何元数据),Field对象接受的值没有任何限制
②设置Field对象的主要目就是在一个地方定义好所有的元数据
③注意,声明item的Field对象,并没有被赋值成class属性。(可通过item.fields进行访问)
④Field类仅是内置字典类(dict)的一个别名,并没有提供额外的方法和属性。被用来基于类属性的方法来支持item生命语法。
【Field类源码】
class Field(dict):
"""Container of field metadata"""
2.dict类源码剖析
类内部方法
class dict(object):
"""
dict() -> 创建空字典
dict(mapping) -> 从映射对象的键值对中初始化新字典{"key":value}
dict(iterable) -> 从迭代器初始化字典 d[key] = value
dict(**kwargs) -> 使用字典初始化新字典
"""
# 1.清除字典内部所有内容 -> 空字典
def clear(self):
pass
# 2.字典dict的复制
def copy(self):
""" dict_copy = D.copy()"""
pass
# 3.静态方法。返回一个新的字典,其中包含来自迭代器的键,以及对应的值
@staticmethod # known case
def fromkeys(*args, **kwargs): # real signature unknown
pass
# 4.返回指定键k的值,如果值不在字典中返回d的值
def get(self, k, d=None): # real signature unknown; restored from __doc__
pass
# 5.以字典形式返回可遍历的(键,值)对
def items(self): # real signature unknown; restored from __doc__
pass
# 6.以列表形式返回一个字典所有的键
def keys(self): # real signature unknown; restored from __doc__
pass
# 7.删除字典给定键k所对应的值,返回值为被删除的值。k值必须给出。否则,返回d值。
def pop(self, k, d=None): # real signature unknown; restored from __doc__
pass
# 8.随机返回并删除字典中的一对键和值
def popitem(self): # real signature unknown; restored from __doc__
pass
# 9.和get()类似, 但如果键k不存在于字典中,将会添加键并将值设为d
def setdefault(self, k, d=None): # real signature unknown; restored from __doc__
pass
# 10.将字典2中的键值对更新入调用字典中
def update(self, E=None, **F): # known special case of dict.update
"""
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]
"""
pass
# 11.以字典的形式返回字典中所有的值
def values(self): # real signature unknown; restored from __doc__
""" D.values() -> an object providing a view on D's values """
pass
# 12.内置方法。判断键是否在字典中,在返回True,不在返回False
def __contains__(self, *args, **kwargs): # real signature unknown
pass
# 13.删除字典中对应k键的值
def __delitem__(self, *args, **kwargs): # real signature unknown
""" Delete self[key]. """
pass
# 14.返回存在Value值得字典
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__
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
python处理字典的内置函数
# 15.计算字典元素个数,即键的总数
def len(*args, **kwargs): # real signature unknown
""" Return the number of items in a container. """
pass
# 16.判断字典类型(相当于调用了type类中的__init__()初始化方法)
def __init__(cls, what, bases=None, dict=None): # known special case of type.__init__
"""
type(object_or_name, bases, dict)
type(object) -> the object's type
type(name, bases, dict) -> a new type
# (copied from class doc)
"""
pass