프로그램에 대한 약간의 배경 지식. 그것은 후보자, 몇 가지 지침 및 입력 상자의 그림이있는 graphwindow를 설정 한 다음 사용자는 약어를 입력 상자에 넣고 후보 중 하나를 클릭하고 입력 한 상태와 동일한 투표 수를 표시합니다 . 사용자가 내 목록에없는 상태로 들어가면 오류 메시지를 인쇄하기로되어있는 예외 처리기를 작성하는 데 문제가 있습니다.는 파이썬에서 문제를 열거합니다.
while True:
vote = win.getMouse()
voteX = vote.getX()
voteY = vote.getY()
#Romney
if voteX >= 163 and voteX <= 237 and voteY <= 100:
enteredtext = entrybox.getText()
enteredtextu = enteredtext.upper()
for i, s in enumerate(STATE_LIST):
if enteredtextu != s:
print('Not a state')
else:
totalvotesr += STATE_VOTES[enteredtextu]
votesnumr = ('VOTES:' ,totalvotesr)
displayvotesr.setText(votesnumr)
entrybox = Entry(Point(WINDOW_WIDTH/2, WINDOW_HEIGHT/1.1), 10)
entrybox.draw(win)
if totalvotesr >= 270:
circle_winner(win, Point(WINDOW_WIDTH/4, WINDOW_HEIGHT/12))
cross_out_loser(win, Point(WINDOW_WIDTH/(4/3), WINDOW_HEIGHT/12))
STATE_LIST는 50 개의 모든 상태를 축약 한 목록입니다. 내가 뭘하려고했는지 사용 열거하고 목록에있는 모든 항목에 entereredtextu 확인하고 거기에 "Not 상태"를 인쇄합니다. 내가 겪고있는 문제는 내가 내 목록에없는 상태로 들어갔을 때 "상태가 아님"50 번 인쇄하고 목록에있는 상태로 들어가면 예상했던 것과 비슷한 금액이 표시된다는 것입니다. 012 "상태가 아님"을 인쇄합니다. 012시 47 분