PYTHON. 06장 파이썬 프로그래밍, 어떻게 시작해야 할까?.06-4 간단한 메모장 만들기
PYTHON/CONCEPT 2018. 1. 9. 13:52 |PYTHON. 06장 파이썬 프로그래밍, 어떻게 시작해야 할까?.06-4 간단한 메모장 만들기
- 필요한 기능은? 메모 추가하기, 메모 조회하기
- 입력 받는 값은? 메모 내용, 프로그램 실행 옵션
- 출력하는 값은? memo.txt
python memo.py -a "Life is too short"
// memo.py는 우리가 작성할 파이썬 프로그램명이다.
// -a는 이 프로그램의 실행 옵션이고
// "Life is too short"는 추가할 메모 내용이 된다.
1. 우선 다음과 같이 입력으로 받은 옵션과 메모를 출력하는 코드를 작성해 보자.
# C:/Python/memo.py
import sys
option = sys.argv[1]
memo = sys.argv[2]
print(option)
print(memo)
// sys.argv는 프로그램 실행 시 입력된 값들을 읽어 들일 수 있는 파이썬 라이브러리이다.
// sys.argv[0]는 입력 받은 값 중에서 파이썬 프로그램명인 memo.py이므로 우리가 만들고자 하는 기능에는 필요 없는 값이다.
// 그리고 순서대로 sys.argv[1]은 프로그램 실행 옵션값이 되고 sys.argv[2]는 메모 내용이 된다.
2. memo.py를 작성했다면 다음과 같은 명령을 수행해 보자.
(※ memo.py는 C:\Python
디렉터리에 저장한다)
C:\Python>python memo.py -a "Life is too short"
-a
Life is too short
입력으로 전달한 옵션과 메모 내용이 그대로 출력되는 것을 확인할 수 있다.
3. 이제 입력으로 받은 메모를 파일에 쓰도록 코드를 변경해 보자.
# c:/Python/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값을 읽어 memo.txt 파일에 그 값을 쓰도록 했다.
// 여기서 메모는 항상 새로운 내용이 작성되는 것이 아니라 한 줄씩 추가되어야 하므로 파일 열기 모드를 "a"로 했다.
// 그리고 메모를 추가할 때마다 다음 줄에 저장되도록 하기 위해서 줄바꿈 문자(\n
)도 추가로 파일에 쓰도록 했다.
4. 이제 다음과 같은 명령을 수행해 보자.
C:\Python>python memo.py -a "Life is too short"
C:\Python>python memo.py -a "You need python"
// 그리고 파일에 정상적으로 메모가 기입되었는지 다음과 같이 확인해 보자.
C:\Python>type memo.txt
Life is too short
You need python
// 추가한 메모가 정상적으로 저장된 것을 볼 수 있다.
5. 이번에는 작성한 메모를 출력하는 부분을 만들 차례이다. 메모 출력은 다음과 같이 동작하도록 만들어 보자.
python memo.py -v
메모 추가는 -a 옵션을 사용하고 메모 출력은 -v 옵션을 이용한다.
이제 메모 출력을 위해서 다음과 같이 코드를 변경해 보자.
# c:/Python/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)
옵션으로 -v가 들어온 경우 memo.txt 파일을 읽어서 출력하도록 하였다.
6. 코드를 수정한 후 다음과 같은 명령을 수행해 보자.
C:\Python>python memo.py -v
Life is too short
You need python
입력했던 메모가 그대로 출력되는 것을 확인할 수 있다.
'PYTHON > CONCEPT' 카테고리의 다른 글
PYTHON. 06장 파이썬 프로그래밍, 어떻게 시작해야 할까?. 06-6 하위 디텍터리 검색하기 (0) | 2018.01.09 |
---|---|
PYTHON. 06장 파이썬 프로그래밍, 어떻게 시작해야 할까?. 06-5 탭을 4개의 공백으로 바꾸기 (0) | 2018.01.09 |
PYTHON. 06장 파이썬 프로그래밍, 어떻게 시작해야 할까?. 06-3 게시판 페이징하기 (0) | 2018.01.09 |
PYTHON. 06장 파이썬 프로그래밍, 어떻게 시작해야 할까?. 06-2. 3과 5일 배수 합하기 (0) | 2018.01.09 |
PYTHON. 06장 파이썬 프로그래밍, 어떻게 시작해야 할까?. 06-1 내가 프로그램을 만들 수 있을까? (0) | 2018.01.09 |