오늘은 맑음

Python 파일을 읽어서 수정해보자 본문

Language/Python

Python 파일을 읽어서 수정해보자

자전거 타는 구구 2021. 7. 18. 21:10
반응형

이번에는 이미 적혀있는 파일을 읽어서 수정을 해보겠습니다.

읽을 파일은 이전에 사용했던 

 

Hello Python!

Let's learn Python

 

으로 하겠습니다.

 

string to list

 

먼저 파일을 string으로 읽고 char단위로 잘라서 list로 반환해보겠습니다.

memo.txt를 읽어 read()함수를 이용해서 string으로 반환합니다.

이 memo를 list()함수를 사용해서 char단위로 list를 만들어 반환합니다.

출력해보면 아래와 같습니다.

 

memo를 string과 list로 각각 출력

 

이제 기본적으로 파일을 읽어서 수정할 준비가 되었습니다.

그럼 하나하나 읽어서 Python이라는 단어를 Verilog HDL로 변경해보겠습니다.

 

먼저 special keyword를 정의해줍니다. 

special keyword란 단어를 제외한 나머지를 의미합니다.

예를 들면 위의 list에서 볼 수 있듯이 공백, 줄 바꿈 문자(\n), 느낌표 등이 있습니다.

 

1. memo_list를 하나하나 읽습니다.

2. 읽은 데이터가 special keyword에 속하는지 판단합니다.

  • 만약 special keyword가 아니라면 단어의 일부분이므로 token에 추가합니다.
  • 만약 special keyword라면 하나의 단어가 끝났다는 의미이므로 token이 Python인지 판별합니다.
    • token이 Python이라면 new_content에 VerilogHDL을 추가합니다.
    • token에 Python이 아니라면 new_content에 token을 추가합니다.

3. 읽은 데이터가 special keyword가 아니라면 데이터를 token에 추가합니다.

 

 

이렇게 다 리스트를 끝까지 다 읽고 나면 기존 파일을 닫아주고 새로운 파일을 열어 new_content를 write해줍니다.

 

memo_new.txt

위의 프로그램을 실행한 후 memo_new.txt를 열어보면 위와 같이 적혀있는 것을 확인할 수 있습니다.

 

반응형
Comments