2012-12-17 3 views
2

가능한 중복 :
Python Infinity - Any caveats?
python unbounded xrange()인쇄 번호

나는 당신이 인쇄 간단한 스크립트를 코딩 파이썬에 관한 질문이 있습니다 1부터 x까지의 숫자 시퀀스 x이 무한대입니다. 즉, "x"은 모든 값을 가질 수 있습니다.

예를 들어 일련의 숫자를 인쇄 할 경우 번호가 "10"일 때 중지된다는 "if"문에 1부터 숫자가 인쇄되고 인쇄 프로세스가 중지됩니다. 내 현재 코드에서

, 나는 "에 대한"루프를 같이 사용하고 있습니다 :

for x in range(0,100): 
    print x 

나는 "100"은 "범위"에 그 것이다 다른 뭔가로 대체 할 수있는 방법을 파악하기 위해 노력하고있어 값을 지정하지 않고 루프가 인쇄 순서를 계속 유지하게하십시오. 도움이 될 것입니다. 감사합니다

itertools.count
+1

내가이 중복 또는 어떻게 다른 질문도 할 수있어 표시되지 않습니다 while 루프 –

+2

@Hedde를 사용합니다. –

답변

14

: 간단한 while 루프와

import itertools 
for x in itertools.count(): 
    print x 

:

x = 0 
while True: 
    print x 
    x += 1 
+0

정말 고마워요. 이것은 매력처럼 작동했습니다. –

+1

@MaxWayne 도움이 된 것을 기쁘게 생각합니다. 그렇다면 [대답 수락] (http://meta.stackexchange.com/a/5235/181223)을 원할 수 있습니다. –

2

y은 숫자가 될 수 있습니다.

for x in range(0,y): 
    print x 

당신은 y을 무한대로 또는 음수로 가질 수 없습니다. 다음 예제는 유용하다고 생각합니다.

>>> for y in range(0,): 
...  print y 
... 
>>> 
>>> for y in range(0,1000000000000000): 
...  print y 
... 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
OverflowError: range() result has too many items 
>>> for y in range(0,-1): 
...  print y 
... 
>>> 
+0

나는 그것을 시도했지만 오류가 나타났다 : "y 정의되지 않았습니다" 도움을 주셔서 감사합니다 –

+0

얼마나 큰 파이썬 "정수"가 될 수에 대한 제한이 없습니다 - 조용히'긴' 그리고 너가 기억을 잃을 때까지 계속 가라. – mgilson

+0

@mgilson : 답변을 수정했습니다. 나는 파이썬 한계 ... 메모리 부족하다고 ... 나는 내 대답을 오인이라고 생각하지 않는다. 감사합니다 –

0
x=0 
while True: 
    print x 
    x = x +1 
+1

나는 while 루프 안에서 증가하는 것을 원한다고 생각한다. 나는 거기에 넣었다. 또한 유효한 구문으로 만들기 위해 While을 while으로 변경했습니다. – mgilson

+0

@mgilson 예 thanks sorry typo –

+0

'x = x + 1'은'x + = 1'이어야합니다. –

2

당신은 발전기와 함께 할 수 있습니다 :

def infinity(start=0): 
    x = start 
    while True: 
     yield x 
     x += 1 

for x in infinity(1): 
    print x