ericasesac   2년 전

6603의 입력이 이렇게 들어오는데,

7 1 2 3 4 5 6 7

8 1 2 3 5 8 13 21 34

0

아래와 같은 형식으로 입력을 받으려고 합니다.

lotto = []

while True:

    lotto = input()

    print(lotto)

    if lotto ==0:

        break

마지막 0을 input()하면, while이 종료를 해야 할 것 같은데, 왜 종료가 되지 않을까요?

감사합니다.

dbshin59   2년 전

만일 input이 0이라면, input()함수는 모든 입력을 문자열로 받습니다. 0을 '0'으로 수정하시면 됩니다.

ericasesac   2년 전

7 1 2 3 4 5 6 7

8 1 2 3 5 8 13 21 34

0

그래도 두번째 입력까지 들어오고, 엔터를 한번 더 쳐야 하는 이유를 알 수 있을까요?

감사합니다.

dbshin59   2년 전

엔터를 한번 더 쳐야 한다는 것은...

7 1 2 3 4 5 6 7

8 1 2 3 4 5 8 13 21 34 0

으로 입력할 수 있을 수 있다는 말인가요?

아니면 0을 입력하고 나서 엔터를 한번 더 쳐야 한다는 말인가요?

ericasesac   2년 전

7 1 2 3 4 5 6 7

8 1 2 3 5 8 13 21 34

0

문제의 입력을 그대로 입력을 하면, print(lotto)에서 <--입력을 그대로 출력해보니는 print()문

7 1 2 3 4 5 6 7

8 1 2 3 4 5 8 13 21 34

여기까지 바로 출력이 되고,

엔터를 한번 쳐야,

0

이 출력을 합니다.

왜? 엔터를 한번쳐야, 0이 출력을 하는지가 궁금합니다.

답변주셔서 감사합니다.

dbshin59   2년 전

질문자님께서

7 1 2 3 4 5 6 7 (엔터)

8 1 2 3 4 5 8 13 21 34(엔터)

0 (엔터 없음)

으로 입력하신 것 같습니다.

파이썬의 input()은 엔터를 입력해야 입력을 처리합니다.

dbshin59   2년 전

7 1 2 3 4 5 6 7
8 1 2 3 5 8 13 21 34
0

이걸 0 옆에 엔터 부분까지 쭉 복사해서 붙여보세요

댓글을 작성하려면 로그인해야 합니다.