본문 바로가기
파이썬

파이썬 오류-입력은 최대 1 개의 인수가 필요하며 3 개를 얻었습니다.

by º기록 2020. 9. 15.
반응형

5 개의 테스트 점수를 받아들이도록 다음 for 루프를 설정했습니다. 사용자에게 5 개의 다른 점수를 입력하라는 메시지가 루프에 표시되기를 원합니다. 이제 "Please enter your next test score"라는 입력을 작성하여이 작업을 수행 할 수 있지만 각 입력 된 점수에 관련 번호를 입력하라는 메시지가 표시됩니다.

따라서 첫 번째 입력에는 "시험 1에 대한 점수를 입력하십시오"를 표시하고 두 번째 점수에는 "시험 2에 대한 점수를 입력하십시오"를 표시하고 싶습니다. 이 루프를 실행하려고하면 다음 오류가 발생합니다.

Traceback (most recent call last):
  File "C:/Python32/Assignment 7.2", line 35, in <module>
    main()
  File "C:/Python32/Assignment 7.2", line 30, in main
    scores = input_scores()
  File "C:/Python32/Assignment 7.2", line 5, in input_scores
    score = int(input('Please enter your score for test', y,' : '))
TypeError: input expected at most 1 arguments, got 3

다음은 코드입니다.

def input_scores():
    scores = []
    y = 1
    for num in range(5):
        score = int(input('Please enter your score for test', y, ': '))

        while score < 0 or score > 100:
            print('Error --- all test scores must be between 0 and 100 points')
            score = int(input('Please try again: '))
        scores.append(score)
        y += 1
        return scores

 

해결 방법

 

원하는 것을 작성하는 간단하고 정확한 방법 :

score = int(input('Please enter your score for test ' + str(y) + ': '))

 

참조 페이지 https://stackoverflow.com/questions/9969844

 

 

반응형

댓글