python判斷變量是否為列表的方法
python的數據類型有:數字(int)、浮點(float)、字符串(str),列表(list)、元組(tuple)、字典(dict)、集合(set)。
一般通過以下方法進行判斷:
1、isinstance(參數1,參數2)
描述:該函數用來判斷一個變量(參數1)是否是已知的變量類型(參數2) 類似于type()
參數1:變量
參數2:可以是直接或間接類名、基本類型或者由它們組成的元組。
返回值:如果對象的類型與參數二的類型(classinfo)相同則返回 True,否則返回 False。
例子:
#判斷變量類型的函數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=120print('{0}是{1}'.format(money,getType(money)))#判斷變量是否為字符串money='120'print('{0}是{1}'.format(money,getType(money)))money=12.3print('{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=120print('{0}是{1}'.format(money,getType(money)))#判斷變量是否為字符串money='120'print('{0}是{1}'.format(money,getType(money)))money=12.3print('{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() 區(qū)別:
type() 不會認為子類是一種父類類型,不考慮繼承關系。
isinstance() 會認為子類是一種父類類型,考慮繼承關系。
如果要判斷兩個類型是否相同推薦使用 isinstance()。
以上就是python判斷變量是否為列表的方法的詳細內容,更多關于python如何判斷變量是否為列表的資料請關注好吧啦網其它相關文章!
相關文章:
