У меня есть 64-разрядная установка CPython 3.4 на windows7. Я использую пакет pythonnet (2.0.0.dev1). Я хочу создать экземпляр действия делегата, но это дает мне ошибку.python3 общие делегаты pythonnet
def display(num):
print("num=", num)
import clr
clr.AddReference("System")
import System
paction=System.Action[System.Int32](display)
Я получаю эту ошибку:
TypeError Traceback (most recent call last) in() ----> 1 paction=System.Action[System.Int32](display) TypeError: unsubscriptable object
Я предполагаю, что это путь один должен указать дженерики.
Я проверил документ и сообщение this и все еще не вижу проблемы. я palyed немного с методом перегрузки, но не помогло:
paction=System.Action.Overloads[System.Int32](display)
TypeError Traceback (most recent call last) in() ----> 1 paction=System.Action.Overloads[System.Int32](display) TypeError: No match found for constructor signature
Хорошо, это кажется более легитимным методом. Я не знал, что дженерики обрабатываются таким образом на Python.net, поскольку он просто работал в IronPython. @ user2281723 вы должны принять это решение поверх моего. –