Heim > Artikel > Backend-Entwicklung > Beurteilung des Python-Objekttyps und Funktionsüberladung
1. Bestimmen Sie den Objekttyp
Sie können den Typ des Objekts über die Typfunktion ermitteln:
x = 'Hello' s = type(x) print s x = 'Hello' s = type(x) print s
2. Funktionsüberladung
Beim Schreiben von Funktionen stoßen Sie häufig auf Situationen, in denen Sie mit unterschiedlichen Parametertypen und einer unterschiedlichen Anzahl von Parametern umgehen müssen.
In C werden normalerweise mehrere Funktionen mit demselben Namen, aber unterschiedlichen Parametern zum Überladen definiert
Eine Überladung in Python kann jedoch auf andere Weise erreicht werden: Standardwert für die Parametertypbeurteilung
import os, sys def tracelog(s='', n=40): if isinstance(n, int): print '-'*n else: print '-'*40 if isinstance(s, str): print s elif isinstance(s, list): s1 = '' for x in s: s1 = s1 + ' ' + x print s1 def main(): tracelog(n=50) tracelog(sys.argv) tracelog(n=20)
main()
import os, sys def tracelog(s='', n=40): if isinstance(n, int): print '-'*n else: print '-'*40 if isinstance(s, str): print s elif isinstance(s, list): s1 = '' for x in s: s1 = s1 + ' ' + x print s1 def main(): tracelog(n=50) tracelog(sys.argv) tracelog(n=20) main()
Der obige Code definiert ein Funktions-Tracelog. Diese Funktion ist der s-Parameter ausgedruckt. Der s-Parameter kann eine Zeichenfolge oder eine Liste sein, und er kann auch eine horizontale Linie mit einer bestimmten Länge drucken.
Darunter: Die Funktion isinstance wird verwendet, um zu bestimmen, ob das Objekt von einem bestimmten Typ ist. Der zweite Parameter ist der Objekttyp, der über die Typfunktion abgefragt werden kann.