當前位置: 首頁>>代碼示例>>Python>>正文


Python bson.SON屬性代碼示例

本文整理匯總了Python中bson.SON屬性的典型用法代碼示例。如果您正苦於以下問題:Python bson.SON屬性的具體用法?Python bson.SON怎麽用?Python bson.SON使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在bson的用法示例。


在下文中一共展示了bson.SON屬性的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: objify

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def objify(self, doc, columns=None):
        """
        Decode a Pymongo SON object into an Pandas DataFrame
        """
        cols = columns or doc[METADATA][COLUMNS]
        data = {}

        for col in cols:
            # if there is missing data in a chunk, we can default to NaN
            # and pandas will autofill the missing values to the correct length
            if col not in doc[METADATA][LENGTHS]:
                d = [np.nan]
            else:
                d = decompress(doc[DATA][doc[METADATA][LENGTHS][col][0]: doc[METADATA][LENGTHS][col][1] + 1])
                # d is ready-only but that's not an issue since DataFrame will copy the data anyway.
                d = np.frombuffer(d, doc[METADATA][DTYPE][col])

                if MASK in doc[METADATA] and col in doc[METADATA][MASK]:
                    mask_data = decompress(doc[METADATA][MASK][col])
                    mask = np.frombuffer(mask_data, 'bool')
                    d = ma.masked_array(d, mask)
            data[col] = d

        # Copy into
        return pd.DataFrame(data, columns=cols, copy=True)[cols] 
開發者ID:man-group,項目名稱:arctic,代碼行數:27,代碼來源:numpy_arrays.py

示例2: dumps

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def dumps(obj, *args, **kwargs):
    """Helper function that wraps :func:`json.dumps`.

    Recursive function that handles all BSON types including
    :class:`~bson.binary.Binary` and :class:`~bson.code.Code`.

    :Parameters:
      - `json_options`: A :class:`JSONOptions` instance used to modify the
        encoding of MongoDB Extended JSON types. Defaults to
        :const:`DEFAULT_JSON_OPTIONS`.

    .. versionchanged:: 3.4
       Accepts optional parameter `json_options`. See :class:`JSONOptions`.

    .. versionchanged:: 2.7
       Preserves order when rendering SON, Timestamp, Code, Binary, and DBRef
       instances.
    """
    json_options = kwargs.pop("json_options", DEFAULT_JSON_OPTIONS)
    return json.dumps(_json_convert(obj, json_options), *args, **kwargs) 
開發者ID:birforce,項目名稱:vnpy_crypto,代碼行數:22,代碼來源:json_util.py

示例3: _match_map

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def _match_map(self, doc, other_doc):
        for key, val in doc.items():
            if val is absent:
                if key in other_doc:
                    return False
            elif not self._match_val(val, other_doc.get(key, None)):
                return False

        if isinstance(doc, (OrderedDict, bson.SON)):
            if not isinstance(other_doc, (OrderedDict, bson.SON)):
                raise TypeError(
                    "Can't compare ordered and unordered document types:"
                    " %r, %r" % (doc, other_doc))
            keys = [key for key, val in doc.items()
                    if val is not absent]
            if not seq_match(keys, list(other_doc.keys())):
                return False

        return True 
開發者ID:ajdavis,項目名稱:mongo-mockup-db,代碼行數:21,代碼來源:__init__.py

示例4: count_by_state_unsynced

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def count_by_state_unsynced(self, arg):
        exp_key = self._exp_key
        # TODO: consider searching by SON rather than dict
        if isinstance(arg, int):
            if arg not in JOB_STATES:
                raise ValueError('invalid state', arg)
            query = dict(state=arg)
        else:
            assert hasattr(arg, '__iter__')
            states = list(arg)
            assert all([x in JOB_STATES for x in states])
            query = dict(state={'$in': states})
        if exp_key != None:
            query['exp_key'] = exp_key
        rval = self.handle.jobs.find(query).count()
        return rval 
開發者ID:LGE-ARC-AdvancedAI,項目名稱:auptimizer,代碼行數:18,代碼來源:mongoexp.py

示例5: deserialize

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def deserialize(self, data, columns=None):
        """
        Deserializes SON to a DataFrame

        Parameters
        ----------
        data: SON data
        columns: None, or list of strings
            optionally you can deserialize a subset of the data in the SON. Index
            columns are ALWAYS deserialized, and should not be specified

        Returns
        -------
        pandas dataframe or series
        """
        if not data:
            return pd.DataFrame()

        meta = data[0][METADATA] if isinstance(data, list) else data[METADATA]
        index = INDEX in meta

        if columns:
            if index:
                columns = columns[:]
                columns.extend(meta[INDEX])
            if len(columns) > len(set(columns)):
                raise Exception("Duplicate columns specified, cannot de-serialize")

        if not isinstance(data, list):
            df = self.converter.objify(data, columns)
        else:
            df = pd.concat([self.converter.objify(d, columns) for d in data], ignore_index=not index)

        if index:
            df = df.set_index(meta[INDEX])
        if meta[TYPE] == 'series':
            return df[df.columns[0]]
        return df 
開發者ID:man-group,項目名稱:arctic,代碼行數:40,代碼來源:numpy_arrays.py

示例6: dumps

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def dumps(obj, *args, **kwargs):
    """Helper function that wraps :class:`json.dumps`.

    Recursive function that handles all BSON types including
    :class:`~bson.binary.Binary` and :class:`~bson.code.Code`.

    .. versionchanged:: 2.7
       Preserves order when rendering SON, Timestamp, Code, Binary, and DBRef
       instances. (But not in Python 2.4.)
    """
    if not json_lib:
        raise Exception("No json library available")
    return json.dumps(_json_convert(obj), *args, **kwargs) 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:15,代碼來源:json_util.py

示例7: _json_convert

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def _json_convert(obj):
    """Recursive helper method that converts BSON types so they can be
    converted into json.
    """
    if hasattr(obj, 'iteritems') or hasattr(obj, 'items'):  # PY3 support
        return SON(((k, _json_convert(v)) for k, v in obj.items()))
    elif hasattr(obj, '__iter__') and not isinstance(obj, string_types):
        return list((_json_convert(v) for v in obj))
    try:
        return default(obj)
    except TypeError:
        return obj 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:14,代碼來源:json_util.py

示例8: validate_document_class

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def validate_document_class(option, value):
    """Validate the document_class option."""
    if not issubclass(value, (abc.MutableMapping, RawBSONDocument)):
        raise TypeError("%s must be dict, bson.son.SON, "
                        "bson.raw_bson.RawBSONDocument, or a "
                        "sublass of collections.MutableMapping" % (option,))
    return value 
開發者ID:birforce,項目名稱:vnpy_crypto,代碼行數:9,代碼來源:common.py

示例9: validate_is_mapping

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def validate_is_mapping(option, value):
    """Validate the type of method arguments that expect a document."""
    if not isinstance(value, abc.Mapping):
        raise TypeError("%s must be an instance of dict, bson.son.SON, or "
                        "other type that inherits from "
                        "collections.Mapping" % (option,)) 
開發者ID:birforce,項目名稱:vnpy_crypto,代碼行數:8,代碼來源:common.py

示例10: validate_is_document_type

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def validate_is_document_type(option, value):
    """Validate the type of method arguments that expect a MongoDB document."""
    if not isinstance(value, (abc.MutableMapping, RawBSONDocument)):
        raise TypeError("%s must be an instance of dict, bson.son.SON, "
                        "bson.raw_bson.RawBSONDocument, or "
                        "a type that inherits from "
                        "collections.MutableMapping" % (option,)) 
開發者ID:birforce,項目名稱:vnpy_crypto,代碼行數:9,代碼來源:common.py

示例11: _json_convert

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def _json_convert(obj, json_options=DEFAULT_JSON_OPTIONS):
    """Recursive helper method that converts BSON types so they can be
    converted into json.
    """
    if hasattr(obj, 'iteritems') or hasattr(obj, 'items'):  # PY3 support
        return SON(((k, _json_convert(v, json_options))
                    for k, v in iteritems(obj)))
    elif hasattr(obj, '__iter__') and not isinstance(obj, (text_type, bytes)):
        return list((_json_convert(v, json_options) for v in obj))
    try:
        return default(obj, json_options)
    except TypeError:
        return obj 
開發者ID:birforce,項目名稱:vnpy_crypto,代碼行數:15,代碼來源:json_util.py

示例12: to_mongo

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def to_mongo(self, *args, **kwargs) -> SON:
        """Wrap to_mongo."""
        raw = kwargs.pop("raw", False)
        son = super().to_mongo(*args, **kwargs)
        if all([not raw, "_id" in son, "id" not in son]):
            son["id"] = son.pop("_id")
        return son 
開發者ID:hiroaki-yamamoto,項目名稱:mongoengine-goodjson,代碼行數:9,代碼來源:custom.py

示例13: dumps

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def dumps(obj, *args, **kwargs):
    """Helper function that wraps :class:`json.dumps`.

    Recursive function that handles all BSON types including
    :class:`~bson.binary.Binary` and :class:`~bson.code.Code`.

    .. versionchanged:: 2.7
       Preserves order when rendering SON, Timestamp, Code, Binary, and DBRef
       instances.
    """
    return json.dumps(_json_convert(obj), *args, **kwargs) 
開發者ID:leancloud,項目名稱:satori,代碼行數:13,代碼來源:json_util.py

示例14: _json_convert

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def _json_convert(obj):
    """Recursive helper method that converts BSON types so they can be
    converted into json.
    """
    if hasattr(obj, 'iteritems') or hasattr(obj, 'items'):  # PY3 support
        return SON(((k, _json_convert(v)) for k, v in iteritems(obj)))
    elif hasattr(obj, '__iter__') and not isinstance(obj, (text_type, bytes)):
        return list((_json_convert(v) for v in obj))
    try:
        return default(obj)
    except TypeError:
        return obj 
開發者ID:leancloud,項目名稱:satori,代碼行數:14,代碼來源:json_util.py

示例15: validate_list_or_mapping

# 需要導入模塊: import bson [as 別名]
# 或者: from bson import SON [as 別名]
def validate_list_or_mapping(option, value):
    """Validates that 'value' is a list or a document."""
    if not isinstance(value, (abc.Mapping, list)):
        raise TypeError("%s must either be a list or an instance of dict, "
                        "bson.son.SON, or any other type that inherits from "
                        "collections.Mapping" % (option,)) 
開發者ID:wistbean,項目名稱:learn_python3_spider,代碼行數:8,代碼來源:common.py


注:本文中的bson.SON屬性示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。