В python (и, следовательно, в IronPython) вы не можете изменить параметр, который не является изменяемым (например, строки)
Таким образом, вы не можете напрямую перенести данный код в python, но вы должны сделать что-то вроде:
def GetTP(name):
return tuple([2, 1])
и когда вы звоните, вы должны сделать:
retTuple = GetTP(name)
ter = retTuple[0]
prov = retTuple[1]
это то же самое поведение, когда в IronPython вы вызываете метод C #, содержащий параметры out / ref.
Фактически, в этом случае IronPython возвращает кортеж параметров out / ref, и, если есть возвращаемое значение, оно является первым в кортеже.
EDIT:
на самом деле можно переопределить метод с параметрами out / ref, смотрите здесь:
http://ironpython.net/documentation/dotnet/dotnet.html#methods-with-ref-or-out-parameters