Python의 데이터 유형에는 숫자(int), 부동 소수점(float), 문자열(str), 목록(list), 튜플(tuple), 사전(dict) 및 집합(set)이 포함됩니다.
일반적으로 다음 방법으로 판단합니다.
1, isinstance(매개변수 1, 매개변수 2)
설명: 이 함수는 변수(매개변수 1)가 알려진 변수 유형(매개변수 2)인지 여부를 판단하는 데 사용됩니다. 유사한 type()의 경우
매개변수 1: 변수
매개변수 2: 직접 또는 간접 클래스 이름, 기본 유형 또는 이들로 구성된 튜플일 수 있습니다.
반환값: 객체의 유형이 매개변수 2(classinfo)의 유형과 동일하면 True를 반환하고, 그렇지 않으면 False를 반환합니다.
관련 권장사항: "Python 비디오 튜토리얼"
예:
#判断变量类型的函数 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)))
반환:
2. 알려진 유형의 상수와 비교
예:
#判断变量类型的函数 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)))
반환:
차이점
isinstance()와 type() 사이:
type()은 하위 클래스를 상위 클래스 유형으로 간주하지 않으며 상속 관계를 고려하지 않습니다.
isinstance()는 하위 클래스를 상위 클래스 유형으로 간주하고 상속 관계를 고려합니다.
두 유형이 동일한지 확인하려면 isinstance()를 사용하는 것이 좋습니다.
위 내용은 Python에서 데이터 유형을 결정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!