Преобразуйте между массивом Python и Массивом.NET

У меня есть метод Python, который возвращает байт Python array.array ('c').

Теперь, я хочу скопировать этот массив с помощью Системы. Время выполнения. InteropServices. Маршал. Копия. Этот метод однако ожидает массив.NET.

import array
from System.Runtime.InteropServices import Marshal

bytes = array.array('c')
bytes.append('a')
bytes.append('b')
bytes.append('c')
Marshal.Copy(bytes, dest, 0, 3)

Существует ли способ сделать эту работу, не копируя данные? В противном случае, как я преобразовываю данные в массиве Python к массиву.NET?

5
задан MvdD 11 June 2010 в 06:34
поделиться

1 ответ

Чтобы преобразовать массив Python в массив .NET:

import array
from System import Array, Char

x = array.array('c', 'abc')

y = Array[Char](x)

Вот некоторая информация о создании типизированных массивов в IronPython: http://www.ironpython.info/index.php?title=Typed_Arrays_in_IronPython

6
ответ дан 14 December 2019 в 13:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: