2014-09-30 2 views
0

요소 세트를 가져 와서 powerset을 인쇄하기위한 간단한 프로그램을 작성하려고합니다. 파이썬의 설명서에 주어진 나는 파워 셋 기능에 대한 조리법을 사용하고Python-chain.from_iterable은 값 대신 메모리 주소를 반환합니다.

: 대신 값을 반환하는 몇 가지 이유를 들어 https://docs.python.org/3.4/library/itertools.html

, 그것은 itertools.chain 객체의 메모리 주소를 반환합니다.

왜 이렇게 했습니까?

from itertools import chain,combinations 
def pwrst(iter): 
    xs = list(iter) 
    return chain.from_iterable(combinations(xs,n) for n in range(len(xs)+1)) 
s = input("Enter elements seperated by comma: ") 
il = s(',') 
ss = [int(x.strip()) for x in il] 
pwrst(ss) 

답변

0

chain.from_iterable은 (누구의 기본 __repr__ 당신에게 메모리 주소를 알려줍니다)는 반복 가능한 객체를 반환합니다. 값을 얻기 위해 실제로 반복해야합니다.

for item in pwrst(ss): 
    ... 
: 예컨대 : 정상적인 상황

list(pwrst(ss)) 

, 당신은 뭔가를 할 수