2014-02-25 2 views
0

빈 배열로 시작한 다음 정리 된 토큰을 해당 배열에 추가하여 다음 구두점 일부 토큰을 지우려고합니다."TypeError : 잘못된 파일 : []"오류가 발생하여 depunctuate 시도했습니다.

def main(): 
    tokens = readTokens("words.txt") 
    depunctuatuate = depunctuateToken(tokens) 

def readTokens(fileName): 
    s = Scanner(fileName) 
    items = [] 
    token = s.readstring() 
    while (token != ""): 
     items.append(token) 
     token = s.readstring() 
    print(items) 
    s.close() 
    return items 

def depunctuateToken(string): 
    result = [] 
    s = Scanner(string) 
    token = s.readstring() 
    punct = [",",".","?",":","'","-"] 
    for i in range(0,len(string),1): 
     if(not(string[i] in punct)): 
      result += [string[i]] 
    return result 
+0

'스캐너'는 파일 이름이'string'이어야한다고 생각합니다. – AShelly

+0

전체 추적을 게시 할 수 있습니까? – aIKid

+0

@AShelly 또는 파일 객체. – aIKid

답변

0

당신은 depunctuateToken 기능에 Scanner 필요하지 않습니다.

문자열의 배열을 전달하고 있습니다. 반복하여 각 문자열에 필터링을 수행합니다. punct return 문을 수정하고 싶을 수도 있습니다. 지금은 첫 번째 항목 만 반환하는 것처럼 보입니다.