2014-11-11 1 views
0

나는 출력 번호 0-9를 별도의 줄에 인쇄하는 간단한 루프를 만들려고합니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 나는 여기의 예를 보았고 그들은 나를 정말로 돕지 않는다. 내가 잘못 된 곳을 설명하면 도움이 될 것입니다.파이썬 단순 루프

def singleline(item): 
    number = 0 
    while number < 10: 
     print(number) 
     number = number + 1 
+0

항목 매개 변수로 무엇을하고 있습니까? 당신의 메인 프로그램은 어디에 있습니까? –

+0

실제 문제는 무엇입니까? 숫자를 보지 못했습니까? 아니면 이상한 것을 인쇄하고 있습니까? – AHuman

+0

나는 아무것도 보지 않는다. 난 그냥 숫자 0,1,2,3,4,5,6,7,8,9을 모두 별도의 줄에 인쇄하고 싶습니다. –

답변

5

함수를 정의했지만 호출하지 않았습니다. 스크립트 마지막에

singleline(1) 

을 추가하십시오.

2

for 루프를 사용하여 range으로 시도해보십시오.

for num in range(10): 
    print(num) 

이것은 루프 while을 사용하는 것보다 간결합니다.

또한 while 루프를 사용하는 경우 number+=1을 사용하는 것이 좋습니다. number=number+1과 같지만 깨끗하게 보입니다.

+0

for 루프 끝에 콜론이 있어야합니다. 이 함수가 'singleline'이라고 불리며 'item'을 취하는 것을 고려할 때 실험 코드를 보았고 for 루프가 실제 코드보다 더 좋다고 추측하기에는 시기상조 일 수 있습니다. – tdelaney

+0

@tdelaney 좋은 지적입니다. 그러나 for 회 돌이를 사용하는 두 줄은 잠시 동안 훨씬 깨끗하게 보입니다. – AHuman

0

먼저 함수의 끝에서 함수를 호출해야합니다. 그렇지 않으면 방금 singleline()을 실행했습니다. 또한 매개 변수에 넣은 항목을 사용하지 않았습니다.

while 루프를 사용하여 이것을 작성하는 더 좋은 방법은 다음과 같습니다. 데프 만일 Singleline() NUM = 0 동안 NUM < 10 인쇄 (NUM) NUM + = NUM ​​ 의 + = 바로 오른쪽에있는 변수 왼쪽의 변수에 1을 추가하는 것을 의미한다. 예를 들어, a = 1 b = 2 a + = b a는 원래 값에 b를 추가하기 때문에 3과 같지 않습니다. 더 효율적인 것이 필요하다면 다음을 사용할 수 있습니다 : num for range (10) : print (num) for 루프는 while 루프와 같은 방식으로 작동합니다 (조건을 취하고 중지 될 때까지 내용을 수행합니다). 설정 한 시간 동안 수행합니다. 그래서이 모든 코드가 의미하는 간단한 용어, 코드가 너무 복잡 인쇄 인분에 1을 더한

0

와우입니다 -

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

가 완벽하게 작동해야 (파이썬), 행운을 빕니다!