Это должно быть просто нарезкой.
small = np.random.rand(100, 100, 100)
big = np.zeros((1000, 1000, 100), dtype=np.int16)
Если вы хотите добиться большого из множества маленьких, вот еще один способ.
big = np.concatenate([small] * (big.shape[0] // small.shape[0]), axis=1)
big = np.concatenate([big] * (big.shape[1] // small.shape[1]), axis=0)
Существует разница в скорости. Цикл лучше.
Если Вы пишете класс, который происходит из System.Web.Services.Protocols.SoapHttpClientProtocol
(и имеет корректные атрибуты, например, WebServiceBinding
, SoapDocumentMethod
, и т.д. относившийся это и его методы), можно довольно легко назвать методы SOAP, не нуждаясь в файле WSDL.
Самый легкий способ сделать это должно было бы, вероятно, записать Ваш собственный веб-сервис ASP.NET, который копирует SOAP третьего лица API, генерируйте прокси-класс от него, затем вручную отредактируйте файл, чтобы гарантировать, что URL, пространства имен, имена методов, типы параметра, и т.д. корректен для стороннего API, который Вы хотите назвать.
Я не создал интерфейс SOAP без доступа к файлу WSDL, но формат довольно хорошо зарегистрирован. Ваш лучший выбор мог бы состоять в том, чтобы создать упрощенный собственный файл WSDL, который отражает то, что Вы знаете сервиса, на который Вы подписываетесь....
Если Вы решаете пойти этим путем, существующий stackoverflow вопрос указывает на некоторые инструменты для проверки Вашего WSDL.
код здесь находится в VB.NET, но я думаю, что Вы получите идею. Следующее является клиентом, который вызывает 'processConfirmation' метод, и это ожидает ответ (MyBase. SendRequestResponse).
Imports Microsoft.Web.Services3
Imports Microsoft.Web.Services3.Addressing
Imports Microsoft.Web.Services3.Messaging
Namespace Logic
Public Class HTTPClient
Inherits Soapclient
Sub New(ByVal destination As EndpointReference)
MyBase.Destination = destination
End Sub
<SoapMethod("processConfirmation")> _
Public Function processConfirmation(ByVal envelope As SoapEnvelope) As SoapEnvelope
Return MyBase.SendRequestResponse("processConfirmation", envelope)
End Function
End Class
End Namespace
И Вы используете его путем выполнения следующего:
Dim hc As New HTTPClient(New Microsoft.Web.Services3.Addressing.EndpointReference(New System.Uri("http://whatever.srv")))
Dim envelope As New Microsoft.Web.Services3.SoapEnvelope
Dim doc As New Xml.XmlDocument
doc.LoadXml("<hey>there</hey>")
envelope.SetBodyObject(doc)
Dim return_envelope As Microsoft.Web.Services3.SoapEnvelope = hc.processConfirmation(envelope)
Я думаю, что это должно работать.... успех!