Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Einfache Version von Numpy in Delphi nachbauen (https://www.delphipraxis.net/214371-einfache-version-von-numpy-delphi-nachbauen.html)

himitsu 3. Jan 2024 19:37

AW: Einfache Version von Numpy in Delphi nachbauen
 
Erstmal geht das VirtualEnvironment auch mit der Installation
und für das Embedded braucht man es garnicht / nicht unbedingt. (es sei denn, man will mehrere "Installationen" in einem Verzeichnis verwalten)

Will man aber sowas wie PIP im Embedded-Python nutzen, dann muß man noch eine Kleinigkeit in der Config einstellen und zur Laufzeit den Suchpfad hinzufügen.
https://www.delphipraxis.net/213346-...n-und-pip.html

bernhard_LA 3. Jan 2024 22:14

AW: Einfache Version von Numpy in Delphi nachbauen
 
Python4Delphi und die Pyscripter IDE sind bei mir schon installiert :-) und in Verwendung.
Die Motivation für meine Frage:

a) wie flexibel kann ich in Delphi ( incl. generics ) eine ähnliche / nachgebaute / analoge Funktionalität bereitstellen,
wo sehe ich dann die Vorteile von Python - wo hat Delphi Code seine Stärken .... ???

b) kann ich von meinem aktuellen Ansatz eine universelle TArray Funktionsbibliothek bereitstellen, geht so was überhaupt ?
mean (Tarray<Integer> ) und mean (Tarray<Real>) ) müssen ja leicht anderes arbeiten ...

himitsu 3. Jan 2024 22:23

AW: Einfache Version von Numpy in Delphi nachbauen
 
Da Python nicht mehr direkt ein Interpreter ist, sondern einen Bytecode erzeugt, der schon echt flott abläuft, hat vergleichbarer Code in Delphi oder Python geschwindigkeitsmäßig kaum einen Unterschied.

himitsu 3. Jan 2024 22:29

AW: Einfache Version von Numpy in Delphi nachbauen
 
Bei Array-of-irgendwas funktioniert die Codeinference nicht, da Dieses nur mit Parametern des direkten Typs arbeiten will (leider),
drum wirst du auch beim Aufruf den Typ mit angeben müssen, also entweder bei der Methode oder deren Klasse.

Delphi-Quellcode:
type
  TIrgendwas = class {or record}
    function Mean<T>(const Arr: TArray<T>) : T; // oder "const Arr: array of T", damit man alle Arten von Arrays übergeben kann
  end;

  // oder
  TIrgendwas<T> = class {or record}
    function Mean(const Arr: TArray<T>) : T;
  end;
Bei der Codeinference könnte man beim Aufruf den Typen weglassen, also implizit ein
Delphi-Quellcode:
i := Sonstwas.Mean(IntegerVariable);
anstatt
Delphi-Quellcode:
i := Sonstwas.Mean<Integer>(IntegerVariable);
.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:21 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz