___ answer622173 ___
Verwenden Sie %code% , um den Typ von %code% zu erhalten. Dann rufe es auf, um bar in den Typ von foo zu konvertieren:
%Vor%
Das funktioniert natürlich nur, wenn der Typ von %code% einen Konstruktor hat, der weiß, wie man bar konvertiert.
___ tag123python ___ Python ist eine dynamische und stark typisierte Programmiersprache, die die Usability betont. Zwei ähnliche, aber größtenteils inkompatible Versionen von Python sind weit verbreitet (2 und 3). Wenn Sie eine versionsspezifische Python-Frage haben, sollten Sie die Tags [python-2.7] oder [python-3.x] zusätzlich zum Tag [python] verwenden. Wenn Sie eine Python-Variante wie jython, pypy, iron-python usw. verwenden, kennzeichnen Sie diese bitte entsprechend.
___ tag123reflection ___ Reflection ist die Fähigkeit eines Programms, seine Struktur und / oder sein Verhalten zur Laufzeit zu beobachten und / oder zu ändern.
___ qstnhdr ___ Python-Reflexion und Typkonvertierung
___ qstntxt ___
In Python werden normalerweise Funktionen wie str (), int (), float () usw. verwendet, um Typkonvertierungen durchzuführen. Diese erfordern jedoch, dass Sie zur Entwicklungszeit wissen, in welchen Typ Sie konvertieren möchten. Ein Teilproblem von etwas Python-Code, den ich versuche zu schreiben, ist wie folgt:
Geben Sie für die beiden Variablen %code% und %code% den Typ %code% an. (Es ist zur Entwicklungszeit nicht bekannt, da dies generischer Code ist.) Versuchen Sie dann, %code% in den Typ %code% zu konvertieren. Wenn dies nicht möglich ist, werfen Sie eine Ausnahme aus.
Nehmen wir zum Beispiel an, dass Sie die Funktion aufrufen, die dies tut %code% . Seine Unterschrift würde aussehen wie
%Vor%
Es würde ungefähr so heißen:
%Vor%
___ answer8390964 ___
%Vor%
ist definitiv das beste, wenn Sie einen Typ prüfen möchten, dann ist "Typ" die beste Methode, und ich bin auf %code% funktioniert perfekt.
___ answer622217 ___
das wäre das Beste:
%Vor%
___ tag123typeconversion ___ Die Typkonvertierung ist die Art und Weise, wie eine Entität eines Datentyps implizit oder explizit in eine andere geändert wird. Dies geschieht, um bestimmte Merkmale von Typhierarchien oder Typendarstellungen auszunutzen.
___ tag123introspection ___ Eine Fähigkeit einiger objektorientierter Programmiersprachen, den Typ eines Objekts zur Laufzeit zu bestimmen.
___ tag123pythondatmodel ___ hilf uns dieses Wiki zu bearbeiten
___