2011-10-25 12 views
0

Le code suivant me donne cette erreur "Erreur de jeton: EOF dans l'instruction multiligne". Je n'arrive pas à trouver l'erreur! Peut-être que quelqu'un d'autre le verra?Une autre erreur de jeton: EOF dans une instruction multiligne

import easygui 
import time 
namegui = easygui.enterbox(msg='Enter your name:', title='Name query', default='Gian') 
situationgui = easygui.enterbox(msg='Please enter your situation:', title='Thought Log(Situation)') 
thoughtsgui = easygui.enterbox(msg='Please enter your thoughts:', title='Thought Log(Thoughts') 
emotionsgui = easygui.enterbox(msg='Please enter your emotions: \n Sad, Mad, Hurt, Depressed, Anxious, Tense, etc.', title='Thought Log(Emotions') 
behaviorgui = easygui.enterbox(msg='Please enter your behavior:', title='Thought Log(Behavior') 


#thinking_trapsgui = easygui.enterbox(msg='Please identify your thinking traps: \n \n' 
# 'FORTUNE-TELLING: This occurs when we predict that things will turn out badly. However, we cannot predict the future because we do not have a magic ball! \n \n' 
# 'MIND-READING: This happens when we believe that we know what others are thinking and we assume that they are thinking the worst of us. However, we cannot mind-read so we do not know what others are thinking! \n \n' 
# 'LABELING: Sometimes we talk to ourselves in a mean way and we use a single negative word to describe ourselves. However, this kind of thinking is unfair and we are too complex to be summed up in a single word! \n \n' 
# 'FILTERING: This happens when we take note of all the bad things that happen, but ignore any good things. \n \n' 
# 'OVERESTIMATING: This happens when we believe that something that is unlikely to occur is actually about to happen. \n \n' 
# 'CATASTROPHIZING: This is when we imagine the worst possible thing is about to happen and we will be unable to cope with it. \n \n' 
# 'OVERGENERALIZING: This is when we use words like always or never to describe situations or events. This is a problematic way of thinking because it does not take all situation or events into account \n \n', 
# title='Thought Log(Identify Your Thinking Traps)') 

thinking_trapsgui = easygui.choicebox(
    msg='Please identify your thinking traps: \n \n', 
    title='Thought Log(Identify Your Thinking Traps)', 
    choices=('FORTUNE-TELLING: This occurs when we predict that things will turn out badly. However, we cannot predict the future because we do not have a magic ball! \n \n' 
      'MIND-READING: This happens when we believe that we know what others are thinking and we assume that they are thinking the worst of us. However, we cannot mind-read so we do not know what others are thinking! \n \n' 
      'LABELING: Sometimes we talk to ourselves in a mean way and we use a single negative word to describe ourselves. However, this kind of thinking is unfair and we are too complex to be summed up in a single word! \n \n' 
      'FILTERING: This happens when we take note of all the bad things that happen, but ignore any good things. \n \n' 
      'OVERESTIMATING: This happens when we believe that something that is unlikely to occur is actually about to happen. \n \n' 
      'CATASTROPHIZING: This is when we imagine the worst possible thing is about to happen and we will be unable to cope with it. \n \n' 
      'OVERGENERALIZING: This is when we use words like always or never to describe situations or events. This is a problematic way of thinking because it does not take all situation or events into account \n \n' 
      ) 


alt_behaviorgui = easygui.enterbox(msg='Please enter alternative behavior:', title='Thought Log(Alt Behavior)') 
alt_thoughtsgui = easygui.enterbox(msg='Please enter alternative thoughts:', title='Thought Log(Alt Thoughts)') 
yeargui = easygui.enterbox(msg='Enter the current year:', title='Current Year', default='2011') 
monthgui = easygui.enterbox(msg='Enter the current month:', title='Current Month') 
daygui = easygui.enterbox(msg='Enter the current day:', title='Current Day') 
time_hourgui = easygui.enterbox(msg='Enter the current hour:', title='Current Hour') 
time_minutegui = easygui.enterbox(msg='Please enter current minutes:', title='Current Minute') 
am_pmgui = easygui.enterbox(msg='Please enter either am or pm:', title='AM OR PM') 
file = open('Thought Record 1.0.txt', 'a') 
file.write(namegui + '\n') 
file.write(daygui) 
file.write('/') 
file.write(monthgui) 
file.write('/') 
file.write(yeargui) 
file.write('\n') 
file.write('Your situation:') 
file.write(situationgui) 
file.write('\n') 
file.write('Your thoughts:') 
file.write(thoughtsgui) 
file.write('\n') 
file.write('Your emotions:') 
file.write(emotionsgui) 
file.write('\n') 
file.write('Your behavior:') 
file.write(behaviorgui) 
file.write('\n') 
file.write('Thinking traps:') 
file.write(thinking_trapsgui) 
file.write('\n') 
file.write('Alternative bahvior:') 
file.write(alt_behaviorgui) 
file.write('\n') 
file.write('Alternative thoughts:') 
file.write(alt_thoughtsgui) 
file.write('\n') 
file.write('\n') 
file.close() 

Aussi l'erreur met en évidence toujours la dernière ligne après file.close(). Je ne comprends pas pourquoi?

Je courais Python 2.5 sous Mac OS X 10.6

+0

Il y a trop de code étranger. Veuillez le réduire à un [échantillon minimal] (http://sscce.org/). – outis

+0

Merci Outis :-) C'est très perspicace. – gian848396

+1

Si vous utilisez un éditeur avec coloration syntaxique (vim, emacs, visual studio, plusieurs autres), ces types d'erreurs sont triviaux à repérer. Envisager de passer à un meilleur éditeur –

Répondre

1

Il vous manque une fermeture) pour thinking_trapsgui variable. Vérifiez si c'est le problème.

Un manquant) donne généralement une erreur de syntaxe, donc je ne suis pas vraiment sûr, mais EOF multiligne Token Error pourrait pointer vers cela.

EDIT

Vous avez écrit

thinking_trapsgui = easygui.choicebox(
    msg='Please identify your thinking traps: \n \n', 
    title='Thought Log(Identify Your Thinking Traps)', 
    choices=('FORTUNE-TELLING: This occurs when we predict that things will turn out badly. However, we cannot predict the future because we do not have a magic ball! \n \n' 
     'MIND-READING: This happens when we believe that we know what others are thinking and we assume that they are thinking the worst of us. However, we cannot mind-read so we do not know what others are thinking! \n \n' 
     'LABELING: Sometimes we talk to ourselves in a mean way and we use a single negative word to describe ourselves. However, this kind of thinking is unfair and we are too complex to be summed up in a single word! \n \n' 
     'FILTERING: This happens when we take note of all the bad things that happen, but ignore any good things. \n \n' 
     'OVERESTIMATING: This happens when we believe that something that is unlikely to occur is actually about to happen. \n \n' 
     'CATASTROPHIZING: This is when we imagine the worst possible thing is about to happen and we will be unable to cope with it. \n \n' 
     'OVERGENERALIZING: This is when we use words like always or never to describe situations or events. This is a problematic way of thinking because it does not take all situation or events into account \n \n' 
     ) 

Le dernier ')' ci-dessus est pour argument chioces. Il suffit donc d'ajouter un autre ')' à la fin de la ligne ci-dessus.

+0

Pourriez-vous s'il vous plaît me montrer à quoi ressemblerait le code avec les éléments manquants? Je ne vois pas de quoi tu parles. Il y a a) à la fin de thinking_trapsgui. – gian848396

+0

Vous avez besoin de deux ')' à la fin de la ligne: un pour 'think_trapsgui', et un pour son argument' choices'! –

Questions connexes