-1
의 비교 목록 :파이썬 : 그냥 다음 궁금 튜플
print [()] == list(tuple()) # prints False
첫 번째는 빈 튜플을 포함하는 목록은, 두 번째는 빈 목록입니다.
왜이 코드는 True 대신 (파이썬 2와 3에서 같은 결과) False를 출력합니까?
미리 감사드립니다.
의 비교 목록 :파이썬 : 그냥 다음 궁금 튜플
print [()] == list(tuple()) # prints False
첫 번째는 빈 튜플을 포함하는 목록은, 두 번째는 빈 목록입니다.
왜이 코드는 True 대신 (파이썬 2와 3에서 같은 결과) False를 출력합니까?
미리 감사드립니다.
빈 목록이있는 하나의 요소 (빈 튜플)가있는 목록을 비교했습니다. list(tuple())
당신이 생각하는대로하지 않습니다.
왜냐하면 list(object)
은 이 아니기 때문입니다.은 하나의 개체를 요소로 사용하여 목록을 생성합니다. list()
은 반복 가능해야하는 오브젝트를으로 변환합니다. 그것은 복사 요소 밖으로 개체의는 :
>>> dictionary = {'foo': 'bar'}
>>> list(dictionary) # iteration over a dictionary produces keys
['foo']
당신은 그것을 빈 튜플을 준, 그래서 결과는 빈 목록입니다
>>> empty =()
>>> list(empty)
[]
tuple()
이 방법에 의해, 같은 일을한다. 그리고 및 tuple()
인수없이은 빈 개체를 생성합니다.
같은 결과가 나오지 않으므로? 첫 번째 요소는 1 요소가있는 목록이고 두 번째 요소는 0 요소가있는 목록입니다. 'list()'** iterable을리스트로 변환합니다 **. 튜플은 반복 가능하며, 빈 튜플을리스트로 변환합니다. –
알았어요, 고마워! – NI6