2016-09-14 3 views
0

단어 목록과 일치하는 파일에 대한 텍스트 파일의 큰 디렉토리를 검색했습니다. 어떻게하면 파이썬에서 일치하는 단어를 출력 할 수 있습니까?텍스트 파일에서 목록의 단어를 검색 한 다음 Python 3.x에서 일치하는 단어를 출력합니다.

이것은 내가 지금까지 가지고있는 것입니다. 목록의 단어 중 하나가 발견 될 때마다 파일 이름을 씁니다. 매번 파일 이름과 일치하는 단어가 하나씩 있으므로 일치하는 단어를 파일 이름과 함께 줄에 추가하고 싶습니다. 어떻게해야합니까? 이 회사는 $ 1.20의 감가 상각을보고

:

ngwrds= ['words'...] 

for filename in os.listdir(os.getcwd()): 
     with open(filename, 'r') as searchfile: 
      for line in searchfile: 
       if any(x in line for x in ngwrds): 
        with open("keyword.txt", 'a') as out: 
         out.write(filename + '\n') 

입력은 라인이처럼 읽을 수있는 긴 텍스트 파일입니다. 목록에서 검색 단어 중 하나가 감가 상각 인 경우

당시 출력 파일은 다음과 같습니다

파일 이름 감가 상각

감사합니다.

+0

입력 및 원하는 출력의 간단한 예를 들려 줄 수 있습니까? –

+0

입력 및 출력 예제를 추가했습니다. – prizmracer11

답변

0

나는 out이 무엇인지 확실하지 오전 내가 어디에서 코드를 실행할 수 있지만 이런 식으로 뭔가를 시도 할 수 :

ngwrds= ['words'...] 

for filename in os.listdir(os.getcwd()): 
    with open(filename, 'r') as searchfile: 
     for line in searchfile: 
      line = line.strip().split(" ") 
      for word in line: 
       if word in ngwrds: 
        out.write(filename + " " + word) 

stripline의 양쪽 끝에서 공백 제거됩니다. splitline에있는 단어 목록을 반환합니다.

관련 문제