2011-07-30 8 views
1

그래서 제가 받고 있습니다 잘못된 구문 add_entry 함수보다 먼저 def가 표시됩니다. 나는 이유를 모른다. 내가 코멘트를 시도하고 다른 기능에 동일한 오류가 발생했습니다. 파이썬 2.7을 사용하고 있습니다.오류 : "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

프로 팁해야 있습니다 : 당신이 구문 오류를 얻을 때, 항상, 너무 앞 선 봐. –

답변

10

view_log에있는 당신의 인쇄 문을 추가 [ 그것은

print line[date[month]],line[date[day]],line[date[year]],line[number] 
관련 문제