2017-11-08 1 views
0
def divisor(n): 
     t=[] 
     i=range(1,n+1) #int object is not iterable 
     for i in n: 
      if i%n==0: 
       return t.append(i) 

임무는 주어진 숫자 n의 모든 인자를리스트에 제공하는 것입니다. 범위로 시도했지만 범위가 반복 가능하지 않기 때문에 사용할 수 없습니다. 그래서 내 질문은 1에서 n까지 반복 할 때 사용할 수있는 것이 무엇입니까? 나는 아무것도 찾지 못했기 때문에 여기서 물어 보려합니다.이 문제를 해결하는 방법에 대한 조언을 해주신 것에 감사드립니다."n"까지 반복하기 위해 사용하는 것

+0

'(1, N + 1)보다 더 효율적입니다 : '당신은 함수가 아니라 생성 범위에 인수 반복된다 – CoryKramer

+4

. 범위는 반복 가능합니다. 동일한'i' 변수에 두번 ' – Busturdust

+3

'의 별칭을 지정하지 않도록주의해야합니다. 그러나 범위가 반복 가능하지 않기 때문에 사용할 수 없습니다. ".... 어, 아니. 'range' 객체는 반복 가능합니다. 즉, 그 전체가 존재한다는 것입니다. 'int' 객체는 다른 한편으로는 ... –

답변

0
for i in xrange(1, n) 

xrange가 range

범위 난에 대한
+3

이것은 파이썬 2에만 해당됩니다. – user3080953

+0

동의. 그러나 파이썬 버전은 문제가되지 않았습니다. 그러나 그것을 명확히하기를위한 감사합니다. – Ajay2588

+0

나는 파이썬 2를 슬프게 사용하지 않는다 :(하지만 어쨌든 고마워! – 123crime

관련 문제