2016-10-30 3 views
0

'의 setText'에는 속성이없는 나는이 오류가 점점 계속 : AttributeError를 'INT'개체가 어떤 속성이없는 '의 setText'AttributeError : 'INT'객체가 내가 양궁 채점 프로그램을 작성해야

def main(): 
    win = gameWindow() 
    currentShot, overallScore = scoreOverlay(win) 

    shot = 0 
    totalScore = 0 
    for i in range(5): 
     p = win.getMouse() 
     p.draw(win) 
     x = p.getX 
     y = p.getY 
     score = scoring(p) 

    currentShot.setText('Current Shot: {0:1}'.format(scoring)) 
    overallScore = 'overallScore' + 'currentShot' 
    overallScore.setText('Total{0:1}'.format(overallScore)) 

    main() 

어떤 아이디어가 이것을 고치는 방법? 나는 이걸 깊이 생각하고있다. 제공 할 수있는 도움에 대해 미리 감사드립니다.

+0

'currentShot'과'overallScore'는 정수입니다 ... – Li357

+0

코드를 들여 씁니다. –

+0

@AndrewLi 어떻게 바꾸겠습니까? –

답변

0

여기에; currentShot = 0 및 여기; overallScore = 0 currentShot 및 overallScore를 정수로 설정합니다. 그들은 더 이상 각각 Text(Point(175,13), 'Current Shot: ')Text(Point(175,340), 'Total: ')과 동일하지 않습니다. currentShot = 0overallScore = 0의 변수에 다른 변수 이름을 사용하면 오류를 수정해야합니다.

+0

그 덕분에 고마워, 나중에 다른 문제가 생겨서 고쳤어. 이제 다른 문제가 생겼어. 이제 TypeError : 객체에 전달 된 비어 있지 않은 형식 문자열 .__ format__ –

+0

코드를 올바르게 따르는 경우'currentShot.setText ('Current Shot : {0 : 1}'. format (scoring))을 변경해야합니다. currentShot.setText ('Current Shot : {0 : 1}. format (shot))'또는'currentShot.setText ('현재 샷 : {0 : 1}. (내가 여기에 사용하고자하는 샷 변수 또는 스코어 변수 중 어느 것이 든 확실하지 않지만, 어느 한 쪽도 문자열로 변환해야합니다. 예를 들어'score = str (scoring (p)) ') 함수, scoring()을 형식화하려고 시도하는 것이 아니라 문자열을 형식화해야합니다. – Eric

+0

또한 totalScore = 'overallScore'+ 'currentShot''은 새 변수 이름을 반영하기 위해 업데이트되어야합니다, overallScore = shot + totalScore' – Eric