- Notifications
You must be signed in to change notification settings - Fork750
Closed
Milestone
Description
Environment
Pythonnet version: 2.4.0 (in both python versions)
Python version:
code working in Python 2.7.17 (v2.7.17:c2f86d86e6, Oct 19 2019, 21:01:17) [MSC v.1500 64 bit (AMD64)] on win32
code not working in Python 3.7.7 (tags/v3.7.7:d7c567b08f, Mar 10 2020, 10:41:24) [MSC v.1900 64 bit (AMD64)] on win32
Operating System: Windows 10 Professional 64-bit
Details
Trying to copy a .NET array to a numpy array using Marshal as in the example on themailing list:
import clrfrom System import Array, Double, IntPtr, Randomfrom System.Runtime.InteropServices import Marshalimport numpy as npr = Random()src = Array.CreateInstance(Double, 10000000)for i in xrange(len(src)): src[i] = r.NextDouble()from System.Runtime.InteropServices import Marshaldest = np.empty(len(src))dest_ptr = IntPtr.__overloads__[int](dest.__array_interface__['data'][0])Marshal.Copy(src, 0, dest_ptr, len(src))
was working fine in python 2 but in 3 results in
Traceback (most recent call last): File "test.py", line 12, in <module> dest_ptr = IntPtr.__overloads__[int](dest.__array_interface__['data'][0])TypeError: no constructor matches given arguments
TODO
How can the changedpython 3 int be used in this constructor?
Metadata
Metadata
Assignees
Labels
No labels