2013-10-31 4 views
0

목록의 모든 요소 유형을 확인하려면 어떻게해야합니까? 예를 들어개체 유형을 확인하는 방법

나는 목록이 : 나는리스트의 각 요소를 통과하고 각 요소의 유형을 출력하는 프로그램을 만들 수있는 방법

li = ["Hello", 12121, False] 

을 "지옥"는 등의

문자열

12121은 정수

거짓은 부울입니다.

답변

0

파이썬에 내장 된 isintance 메소드와 type 메소드를 확인하십시오. 전체 목록을 찾으려면 목록을 반복하고 type 메서드의 결과를 출력하면됩니다.

예를 들어

:

for item in list: 
    print type(item) 

을 또는 당신이 기대하는 경우 특정 유형 : 그것은 상속 된 클래스에 대해 확인하기 때문에

for item in list: 
    if isinstance(item,basestring): 
     print "I am a type of string!" 
    if isinstance(item,(str,unicode)): 
     print "I am a str or unicode!" 
    if isinstance(item,int): 
     print "I am a type of int!" 
    if isinstance(item,(int,float)): 
     print "I am an int or a float!" 
    if isinstance(item,bool): 
     print "I am a boolean!" 
    if isinstance(True,bool): 
     print "I am a boolean!" 
    if isinstance(True,int): 
     print "I am an int!" # because booleans inherit from integers ;) 

isinstance 방법은 일반적으로 더 좋다. 자세한 내용은 this post을 참조하십시오.

+0

나는 그것을 시도했지만 오직 하나의 타입만을 찾는다. ... – user2891763

+0

@ user2891763 'isinstance'의 인수에 튜플을 사용하여 여러 유형과 비교할 수있다. 나는 시연 할 수있는 편집을했다. –

관련 문제