2011-07-30 5 views
1

Donc, je reçois invalide Syntaxe où il est dit def avant la fonction add_entry. Je ne sais pas pourquoi. J'ai essayé de commenter, et puis il y avait la même erreur sur une fonction différente. J'utilise Python 2.7.Erreur: invalide Syntaxe sur "def"

date,number = 0,1 
month,day,year = 1,2,0 
from datetime import datetime 

def home(): 
    option = '' 
    option = raw_input('Press ENTER to view log or input anything to add entries: ') 
    print '\n' 
    if option == '': 
     view_log() 
    else: 
     add_entry() 

def view_log(): 
    log_a = open('storage.txt', 'r') 
    log_b = log_a.read() 
    for line in log_b: 
     print line[date[month]],line[date[day]],line[date[[year]],line[number] 

def add_entry(): 
    old_entry = open('storage.txt', 'r') 
    save = '' 
    for line in old_entry: 
     save = save + line 
    new_entry = open('storage.txt','w') 
    new = input_entry() 
    save = save + str(new) + '\n' 
    new_entry.write(save) 

def input_entry(): 
    n_date = get_date() 
    print 'Todays date is: %s/%s/%s' %(n_date[month],n_date[day],n_date[year]) 
    n_number = raw_input('What was todays number? ') 
    return (n_date,n_number) 

def get_date(): 
    time_a = datetime.now() 
    time_b = str(time_a) 
    time_c = time_b.split(' ') 
    time_d = time_c[0].split('-') 
    time_e = tuple(time_d) 
    return time_e 
+10

pointe Pro: Lorsque vous obtenez une erreur de syntaxe, regardez toujours à la ligne précédente, aussi. –

Répondre

10

Votre déclaration d'impression dans view_log a une [ supplémentaire Il devrait être

print line[date[month]],line[date[day]],line[date[year]],line[number] 
Questions connexes