IT/Python
Python - I/O, File I/O, pickle
최고영회
2018. 9. 10. 10:18
728x90
반응형
SMALL
I/O
앞으로 해도 이효리 뒤로 해도 이효리 이렇게 reverse 해도 같은 문장을 #plaindrome 이라고 부른다.
plaindrome 을 검사하는 연습문제를 만들어 보자. 매우 간단하다.
import re def reverse(text): return text[::-1] def is_plaindrome(text): return text == reverse(text) something = input('enter text:') regexp = '\W' something = re.sub(regexp, '', something) something = something.upper() print(something) if is_plaindrome(something): print('Yes, it is a plaindrome') else: print('No, it is not a plaindrome')Rise to vote, sir. 과 같은 문장은 plaindrome 이다.
정확한 plaindrome 을 확인하기 위해 정규식을 이용하여 영문/숫자가 아닌 경우 제거 하고 모두 대문자로 변경한다.
File I/O 는 정말 쉽다.
python 은 늘 예제 코드를 통해 확인하는 것이 배우기에 쉬운것 같다.
text = 'Programming is fun ' \ 'When the work is dome ' \ 'if you wann make your work also fun:' \ 'use Python!' \ '...' print('---open file for write') f = open('test.txt', 'w') print('---and write text') f.write(text) print('---open file for read') f = open('test.txt', 'r') while True: line = f.readline() if len(line) == 0: break print(line) print('---file close') f.close()쉽다. open (w:write mode, r:read mode, b:binary mode.... help(open)을 통해 자세한 내용을 확인할 수 있다.) 하고 읽고, 쓰고, close 하면된다.
pickle
python 의 객체를 File 로 저장하고 다시 읽을 수 있다. 역시 예제 코드를 통해 확인해 보자.
import pickle shoplistfile = 'shoplist.data' shoplist = ['apple', 'mango', 'carrot'] f = open(shoplistfile, 'wb') pickle.dump(shoplist, f) f.close() del shoplist f = open(shoplistfile, 'rb') storedlist = pickle.load(f) print(storedlist) f.close()
728x90
반응형
LIST