본문 바로가기
Programming/Python

[Python] 파이썬 문제 : 간단한 메모장 만들기

by EunjiBest 2022. 3. 17.

 

 

[Python] 파이썬 문제 : 간단한 메모장 만들기

 

 

 

원하는 메모를 파일에 저장하고 추가 및 조회가 가능한 간단한 메모장을 만들어보자.

 

다른 문제와 마찬가지로

인풋, 아웃풋을 생각해보자.

 

인풋 : 메모 내용, 프로그램 실행 옵션

아웃풋 : memo.txt

그 외 필요한 기능 :  메모장 추가하기, 메모 조회하기

 

 

아래 코드 명령을 실행했을 때 메모를 추가할 수 있도록 만들어보자.

python memo.py-a "Life is too short"

 

memo.py는 우리가 작성할 파이썬 프로그램이다. 

-a는 이 프로그램의 실행 옵션이고, "Life is too short"는 추가할 메모 내용이 되겠다.

 

 

1. 입력으로 받은 옵션과 메모를 출력하는 코드를 작성해보자.

 

#C:/doit/memo.py

import sys

option = sys.argv[1]
memo = sys.argv[2]

print(option)
print(memo)

 

sys를 불러온다.

sys.argv는 프로그램을 실행할 때 입력된 값을 읽어 들일 수 있는 파이썬의 라이브러리이다.

 

sys.argv[1]은 옵션값으로하고,

sys.argv[2]는 메모 내용으로 한다.

 

 

2. 다시 코드 명령을 수행해보면

 

>>> C:/doit>python memo.py-a"Life is too short"
-a
Life is too short

 

입력으로 전달한 옵션과 메모 내용이 그래로 출력되는 것을 확인할 수 있다.

 

 

3. 다음은 입력으로 받은 메모를 파일에 쓰도록 코드를 변경해보자.

 

#C:/doit/memo.py

import sys

option = sys.argv[1]

if option == '-a':
  memo = sys.argv[2]
  f = open('memo.txt', 'a')
  f.write(memo)
  f.write('\n')
  f.close()

 

옵션이 -a인 경우에만 memo값을 읽어서 txt파일에 그 값을 쓰도록 작성한 코드이다.

열기모드a를 쓴 이유는 항상 새로운 내용이 작성되는 것이 아니라 글이 추가되어야하기 때문이다.

그리고 메모를 추가할 때마다 다음 줄에 저장되도록 \n도 추가했다.

 

 

4. 

 

C:/doit>python memo.py-a"Life is too short"
C:/doit>python memo.py-a"You need python"

 

다음과 같이 입력하면 추가한 메모가 정상적으로 저장되는 것을 볼 수 있다.

 

 

5. 그럼 출력을 해보자.

 

python memo.py-v

위 코드를 입력하면 출력이 되도록 프로그래밍을 할 것이다.

-v는 메모출력의 옵션으로 사용한다.

 

#C:/doit/memo.py

import sys

option = sys.argv[1]

if option == '-a':
  memo = sys.argv[2]
  f = open('memo.txt', 'a')
  f.write(memo)
  f.write('\n')
  f.close()
elif option == '-v':
  f = open('memo.txt')
  memo = f.read()
  f.close()
  print(memo)

 

기존 코드에 elif문을 밑에 추가해주었다.

옵션을 -v이 들어온 경우 txt파일을 읽어서 출력하라는 코드이다.

 

 

>>> C:/doit>python memo.py-v

Life is too short
You need python

 

마지막으로 다시 출력코드를 입력해,

코드가 잘 작동되는지 확인한다.

 

 

 

 

 

 

 

 

 

 

 

 

이 포스팅은 '점프 투 파이썬'책을 참고하였습니다.

 

 

 

 

 

 

반응형

댓글