본문 바로가기
파이썬

시스템 명령행 인자와 파일다루기 예제(간단한 메모장 만들기)

by 혜룐 2015. 11. 10.

간단한 메모장 만들기 연습이다. 
https://wikidocs.net/36 에 나와있고, 여기서 말하능 기능은 다음과 같다.
옵션 -a는 추가 , 옵션 -v는 파일을 보여 주는 옵션이다.
(+ 거기에 추가로) 작업하려는 메모파일이름도 사용자로 부터 입력받아서 처리하도록 구현해보자.
아래는 실행 화면이다.
# python memo.py test.txt -a
Enter note : hello world^^
Added !!
# python memo.py test.txt -v
Wed Oct 15 14:49:28 2014: hello world^^
main 함수에서는 sys.argv에 대한 validation 체크를
howto함수에서는 안내에 대한 처리를
fileRead는 파일을 read 하는 기능을
fileWrite는 파일을 write 하는 기능으로 나누었다.
[root@master python]# cat memo.py 
import sys, os, time
def howto():
print("""
Usage
=====
python %s %s -v : option -v is View-memo
python %s %s -a : option -a is Add-memo
""")
def fileRead(filename):
try:
print open(filename).read()
except:
print filename, " does not exist!"
def fileWrite(filename):
try:
word = raw_input("Enter note : ")
f = open(filename, 'a+')
f.write(time.ctime() + ': '+ word + '\n')
f.close()
return True 
except:
return False 
def main():
if len(sys.argv) != 3:
howto()
return
filename = sys.argv[1]
if sys.argv[2] == '-v':
fileRead(filename)
elif sys.argv[2] == '-a':
if fileWrite(filename):
print "Added !!"
else:
print "Error !!"
main()