Heim > Backend-Entwicklung > Python-Tutorial > Bestimmt Python den Typ einer Variablen?

Bestimmt Python den Typ einer Variablen?

步履不停
Freigeben: 2019-07-29 09:52:40
Original
6585 Leute haben es durchsucht

Bestimmt Python den Typ einer Variablen?

Zu den Datentypen von Python gehören: Zahlen (int), Gleitkommazahlen (float), Zeichenfolgen (str), Listen (list), Tupel (tuple) und Wörterbücher (dict), set (Satz)

wird im Allgemeinen nach der folgenden Methode beurteilt:

1. isinstance (Parameter 1, Parameter 2)

Beschreibung: Diese Funktion wird verwendet, um eine Variable zu beurteilen ( Parameter 1) Ob es sich um einen bekannten Variablentyp handelt (Parameter 2), ähnlich wie type()

Parameter 1: Variable

Parameter 2: Es kann sich um einen direkten oder indirekten Klassennamen oder einen Basistyp handeln oder nach dem Tupel, aus dem sie bestehen.

Rückgabewert: Wenn der Typ des Objekts mit dem Typ von Parameter zwei (classinfo) übereinstimmt, geben Sie „True“ zurück, andernfalls geben Sie „False“ zurück

Beispiel:

#判断变量类型的函数
def typeof(variate):
    type=None
    if isinstance(variate,int):
        type = "int"
    elif isinstance(variate,str):
        type = "str"
    elif isinstance(variate,float):
        type = "float"
    elif isinstance(variate,list):
        type = "list"
    elif isinstance(variate,tuple):
        type = "tuple"
    elif isinstance(variate,dict):
        type = "dict"
    elif isinstance(variate,set):
        type = "set"
    return type
# 返回变量类型
def getType(variate):
    arr = {"int":"整数","float":"浮点","str":"字符串","list":"列表","tuple":"元组","dict":"字典","set":"集合"}
    vartype = typeof(variate)
    if not (vartype in arr):
        return "未知类型"
    return arr[vartype]
    
#判断变量是否为整数
money=120
print("{0}是{1}".format(money,getType(money)))
#判断变量是否为字符串
money="120"
print("{0}是{1}".format(money,getType(money)))
money=12.3
print("{0}是{1}".format(money,getType(money)))
#判断变量是否为列表
students=['studentA']
print("{0}是{1}".format(students,getType(students)))
#判断变量是否为元组
students=('studentA','studentB')
print("{0}是{1}".format(students,getType(students)))
#判断变量是否为字典
dictory={"key1":"value1","key2":"value2"}
print("{0}是{1}".format(dictory,getType(dictory)))
#判断变量是否为集合
apple={"apple1","apple2"}
print("{0}是{1}".format(apple,getType(apple)))
Nach dem Login kopieren

Zurückgeben :

Bestimmt Python den Typ einer Variablen?

2. Durch Vergleich mit Konstanten bekannter Typen

Beispiel:

#判断变量类型的函数
def typeof(variate):
    type1 = ""
    if type(variate) == type(1):
        type1 = "int"
    elif type(variate) == type("str"):
        type1 = "str"
    elif type(variate) == type(12.3):
        type1 = "float"
    elif type(variate) == type([1]):
        type1 = "list"
    elif type(variate) == type(()):
        type1 = "tuple"
    elif type(variate) == type({"key1":"123"}):
        type1 = "dict"
    elif type(variate) == type({"key1"}):
        type1 = "set"
    return type1
# 返回变量类型
def getType(variate):
    arr = {"int":"整数","float":"浮点","str":"字符串","list":"列表","tuple":"元组","dict":"字典","set":"集合"}
    vartype = typeof(variate)
    if not (vartype in arr):
        return "未知类型"
    return arr[vartype]
    
#判断变量是否为整数
money=120
print("{0}是{1}".format(money,getType(money)))
#判断变量是否为字符串
money="120"
print("{0}是{1}".format(money,getType(money)))
money=12.3
print("{0}是{1}".format(money,getType(money)))
#判断变量是否为列表
students=['studentA']
print("{0}是{1}".format(students,getType(students)))
#判断变量是否为元组
students=('studentA','studentB')
print("{0}是{1}".format(students,getType(students)))
#判断变量是否为字典
dictory={"key1":"value1","key2":"value2"}
print("{0}是{1}".format(dictory,getType(dictory)))
#判断变量是否为集合
apple={"apple1","apple2"}
print("{0}是{1}".format(apple,getType(apple)))
Nach dem Login kopieren

Rückgabe:

1118859-20180719111155592-1613687455 (1).png

Ergänzung:

Der Unterschied zwischen isinstance() und type():

type() betrachtet die Unterklasse nicht als übergeordneten Klassentyp und berücksichtigt sie nicht das Erbverhältnis.

isinstance() betrachtet die Unterklasse als übergeordneten Klassentyp und berücksichtigt die Vererbungsbeziehung.

Wenn Sie feststellen möchten, ob zwei Typen gleich sind, empfiehlt sich die Verwendung von isinstance().

Empfohlene verwandte Tutorials: Python-Video-Tutorial

Das obige ist der detaillierte Inhalt vonBestimmt Python den Typ einer Variablen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage