1
我不是一個Python程序員,但我試圖讓一個簡單的腳本使用IronPython和VB.Net工作。我已經很遠了,但現在我堅持通過引用傳遞參數。我需要能夠將數據從VB端返回到參數列表中的Python端(因爲Python會返回元組,但.Net不會)。但是,這段代碼不起作用,我不知道爲什麼不行。如何在使用IronPython時從VB返回數組的引用?
這裏是Python代碼:
def GetVoltages(voltages):
fixture.StartScan()
done=False
counter=0
while done == False:
fixture.GetNumDataPoints(num)
if num>=15:
done=True
else:
counter=counter+1
if counter>1000000:
break
if done == True:
fixture.GetDataPoints(num, voltages)
else:
log.WriteLine("Failed to read voltages.")
return done
buff = Array.CreateInstance(System.Double, 0)
if GetVoltages(buff):
log.WriteLine("Checking voltages.")
CheckVoltage(buff, 3, 22)
# do other stuff
夾具是定義的變量,並且該功能正確調用,但Num和電壓在Python端永遠不會改變。這裏是關於VB方面的函數聲明:
Public Function GetDataPoints(ByVal num As Integer, ByRef vals() As Double) As Boolean
Public Function GetNumDataPoints(ByRef num As Integer) As Boolean
我發現,給一些提示的幾個老的頁面,但我沒有看到正確的答案是什麼。