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


Python numpy.shares_memory方法代碼示例

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


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

示例1: test_ensure_contiguous_ndarray_shares_memory

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_ensure_contiguous_ndarray_shares_memory():
    typed_bufs = [
        ('u', 1, b'adsdasdas'),
        ('u', 1, bytes(20)),
        ('i', 8, np.arange(100, dtype=np.int64)),
        ('f', 8, np.linspace(0, 1, 100, dtype=np.float64)),
        ('i', 4, array.array('i', b'qwertyuiqwertyui')),
        ('u', 4, array.array('I', b'qwertyuiqwertyui')),
        ('f', 4, array.array('f', b'qwertyuiqwertyui')),
        ('f', 8, array.array('d', b'qwertyuiqwertyui')),
        ('i', 1, array.array('b', b'qwertyuiqwertyui')),
        ('u', 1, array.array('B', b'qwertyuiqwertyui')),
        ('u', 1, mmap.mmap(-1, 10))
    ]
    for expected_kind, expected_itemsize, buf in typed_bufs:
        a = ensure_contiguous_ndarray(buf)
        assert isinstance(a, np.ndarray)
        assert expected_kind == a.dtype.kind
        if isinstance(buf, array.array):
            assert buf.itemsize == a.dtype.itemsize
        else:
            assert expected_itemsize == a.dtype.itemsize
        assert np.shares_memory(a, memoryview(buf)) 
開發者ID:zarr-developers,項目名稱:numcodecs,代碼行數:25,代碼來源:test_compat.py

示例2: test_memory_details

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_memory_details(dtype):
    """ Ensure that:
          - function handles non C-contiguous layouts correctly
          - output is view of input
          - output is not writeable"""
    x = np.arange(20).reshape(2, 10).astype(dtype)
    x = np.asfortranarray(x)
    y = sliding_window_view(x, (5,), 5)
    soln = np.array(
        [
            [[0, 1, 2, 3, 4], [10, 11, 12, 13, 14]],
            [[5, 6, 7, 8, 9], [15, 16, 17, 18, 19]],
        ]
    )
    assert not y.flags["WRITEABLE"]
    assert_allclose(actual=y, desired=soln)

    x = np.arange(20).reshape(2, 10)
    x = np.ascontiguousarray(x)
    y = sliding_window_view(x, (5,), 5)
    assert not y.flags["WRITEABLE"]
    assert np.shares_memory(x, y)
    assert_allclose(actual=y, desired=soln) 
開發者ID:rsokl,項目名稱:MyGrad,代碼行數:25,代碼來源:test_sliding_window.py

示例3: test_basic_index

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_basic_index(shape: Tuple[int, ...], data: st.SearchStrategy):
    min_dim = data.draw(st.integers(0, len(shape) + 2), label="min_dim")
    max_dim = data.draw(st.integers(min_dim, min_dim + len(shape)), label="max_dim")
    index = data.draw(
        basic_indices(shape=shape, min_dims=min_dim, max_dims=max_dim), label="index"
    )
    x = np.zeros(shape, dtype=int)
    o = x[index]  # raises if invalid index

    note(f"`x[index]`: {o}")
    if o.size and o.ndim > 0:
        assert np.shares_memory(x, o), (
            "The basic index should produce a " "view of the original array."
        )
    assert min_dim <= o.ndim <= max_dim, (
        "The dimensionality input constraints " "were not obeyed"
    ) 
開發者ID:rsokl,項目名稱:MyGrad,代碼行數:19,代碼來源:test_strategies.py

示例4: test_density_matrix_copy

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_density_matrix_copy():
    sim = cirq.DensityMatrixSimulator()

    q = cirq.LineQubit(0)
    circuit = cirq.Circuit(cirq.H(q), cirq.H(q))

    matrices = []
    for step in sim.simulate_moment_steps(circuit):
        matrices.append(step.density_matrix(copy=True))
    assert all(np.isclose(np.trace(x), 1.0) for x in matrices)
    for x, y in itertools.combinations(matrices, 2):
        assert not np.shares_memory(x, y)

    # If the density matrix is not copied, then applying second Hadamard
    # causes old state to be modified.
    matrices = []
    traces = []
    for step in sim.simulate_moment_steps(circuit):
        matrices.append(step.density_matrix(copy=False))
        traces.append(np.trace(step.density_matrix(copy=False)))
    assert any(not np.isclose(np.trace(x), 1.0) for x in matrices)
    assert all(np.isclose(x, 1.0) for x in traces)
    assert all(not np.shares_memory(x, y)
               for x, y in itertools.combinations(matrices, 2)) 
開發者ID:quantumlib,項目名稱:Cirq,代碼行數:26,代碼來源:density_matrix_simulator_test.py

示例5: test_grid_field_as_array

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_grid_field_as_array():
    """Test adding an array as a grid field."""
    fields = ModelDataFields()
    fields.new_field_location("grid", 1)

    fields.at_grid["const"] = [1.0, 2.0]
    assert_array_equal(fields.at_grid["const"], [[1.0, 2.0]])

    val = np.array([1.0, 2.0])
    fields.at_grid["const"] = val
    assert np.shares_memory(val, fields.at_grid["const"])

    val.shape = (1, 1, 2, 1)
    fields.at_grid["const"] = val
    assert_array_equal(fields.at_grid["const"], np.array([[1.0, 2.0]]))
    assert np.shares_memory(val, fields.at_grid["const"]) 
開發者ID:landlab,項目名稱:landlab,代碼行數:18,代碼來源:test_graph_fields.py

示例6: test_shares_memory_api

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_shares_memory_api():
    x = np.zeros([4, 5, 6], dtype=np.int8)

    assert_equal(np.shares_memory(x, x), True)
    assert_equal(np.shares_memory(x, x.copy()), False)

    a = x[:,::2,::3]
    b = x[:,::3,::2]
    assert_equal(np.shares_memory(a, b), True)
    assert_equal(np.shares_memory(a, b, max_work=None), True)
    assert_raises(np.TooHardError, np.shares_memory, a, b, max_work=1)
    assert_raises(np.TooHardError, np.shares_memory, a, b, max_work=long(1)) 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:14,代碼來源:test_mem_overlap.py

示例7: test_may_share_memory_bad_max_work

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_may_share_memory_bad_max_work():
    x = np.zeros([1])
    assert_raises(OverflowError, np.may_share_memory, x, x, max_work=10**100)
    assert_raises(OverflowError, np.shares_memory, x, x, max_work=10**100) 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:6,代碼來源:test_mem_overlap.py

示例8: test_non_ndarray_inputs

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_non_ndarray_inputs():
    # Regression check for gh-5604

    class MyArray(object):
        def __init__(self, data):
            self.data = data

        @property
        def __array_interface__(self):
            return self.data.__array_interface__

    class MyArray2(object):
        def __init__(self, data):
            self.data = data

        def __array__(self):
            return self.data

    for cls in [MyArray, MyArray2]:
        x = np.arange(5)

        assert_(np.may_share_memory(cls(x[::2]), x[1::2]))
        assert_(not np.shares_memory(cls(x[::2]), x[1::2]))

        assert_(np.shares_memory(cls(x[1::3]), x[::2]))
        assert_(np.may_share_memory(cls(x[1::3]), x[::2])) 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:28,代碼來源:test_mem_overlap.py

示例9: test_prepare_out

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_prepare_out(self):

        class with_prepare(np.ndarray):
            __array_priority__ = 10

            def __array_prepare__(self, arr, context):
                return np.array(arr).view(type=with_prepare)

        a = np.array([1]).view(type=with_prepare)
        x = np.add(a, a, a)
        # Returned array is new, because of the strange
        # __array_prepare__ above
        assert_(not np.shares_memory(x, a))
        assert_equal(x, np.array([2]))
        assert_equal(type(x), with_prepare) 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:17,代碼來源:test_umath.py

示例10: test_constructor_copy

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_constructor_copy():
    arr = np.array([0, 1])
    result = PandasArray(arr, copy=True)

    assert np.shares_memory(result._ndarray, arr) is False 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:7,代碼來源:test_numpy.py

示例11: test_to_numpy_copy

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_to_numpy_copy(arr, as_series):
    obj = pd.Index(arr, copy=False)
    if as_series:
        obj = pd.Series(obj.values, copy=False)

    # no copy by default
    result = obj.to_numpy()
    assert np.shares_memory(arr, result) is True

    result = obj.to_numpy(copy=False)
    assert np.shares_memory(arr, result) is True

    # copy=True
    result = obj.to_numpy(copy=True)
    assert np.shares_memory(arr, result) is False 
開發者ID:Frank-qlu,項目名稱:recruit,代碼行數:17,代碼來源:test_base.py

示例12: test_copy_false

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_copy_false(self):
        samples_like = np.ones((5, 5))
        labels = list('abcde')
        arr, lab = dimod.as_samples((samples_like, labels))
        np.testing.assert_array_equal(arr, np.ones((5, 5)))
        self.assertEqual(lab, list('abcde'))
        self.assertIs(labels, lab)
        self.assertTrue(np.shares_memory(arr, samples_like)) 
開發者ID:dwavesystems,項目名稱:dimod,代碼行數:10,代碼來源:test_sampleset.py

示例13: test_view

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import shares_memory [as 別名]
def test_view(self):
        # make sure that the vectors are views
        ss = dimod.SampleSet.from_samples([[-1, 1], [1, 1]], dimod.SPIN, energy=[5, 5])

        self.assertEqual(set(ss.data_vectors), {'energy', 'num_occurrences'})
        for field, vector in ss.data_vectors.items():
            np.shares_memory(vector, ss.record) 
開發者ID:dwavesystems,項目名稱:dimod,代碼行數:9,代碼來源:test_sampleset.py


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