반응형
Python
List 의 각 요소를 text file 에 한줄씩 쓰기
testList = ['123', '456', 'abc', 'def']
123
456
abc
def
filePath = './test.txt'
testList = ['123', '456', 'abc', 'def']
with open(filePath, 'w+') as lf:
lf.write('\n'.join(testList)) # 이렇게 하면 안됩니다~
그런데 문제는
저 텍스트 파일을 읽어 들이면?
filePath = './test.txt'
testList = ['123', '456', 'abc', 'def']
with open(filePath, 'w+') as lf:
lf.write('\n'.join(testList))
with open(filePath, 'r') as lf:
readList = lf.readlines()
print(readList)
# ['123\n', '456\n', 'abc\n', 'def']
보이시나요? 각 요소 뒤에 "\n" 이 붙어있습니다.
간단하게는 각 요소마다 rstrip('\n') 을 하면 될것도 같은데,
testList 의 어떤 요소가 원래 \n 으로 끝나는게 있다면?
파일을 쓰고 다시 읽었을 때 데이터가 똑같지 않겠죠.
이 기본 라이브러리를 사용해서 list 를 편하게 쓰고 읽고 할수 있습니다.
간단한거 설명하면서 말이 길었네요. 그냥 코드 보시죠.
import pickle
filePath = './test.txt'
testList = ['123', '456', 'abc', 'def']
with open(filePath, 'wb') as lf:
pickle.dump(testList, lf)
with open(filePath, 'rb') as lf:
readList = pickle.load(lf)
print(readList)
# ['123', '456', 'abc', 'def']
깔끔합니다.
728x90
반응형
'Python' 카테고리의 다른 글
[Python] file 의 mimetype 가져오기 (0) | 2020.09.24 |
---|---|
[Python] get number from string #텍스트에서 숫자만 가져오기 (0) | 2020.09.06 |
[Python] scheduler 사용하기 #APScheduler (2) | 2020.09.04 |
Python Decorator 파라메터 사용하기 #decorator parameter (3) | 2020.09.03 |
Python Decorator 란? 사용 방법. #Python Decorator (0) | 2020.09.03 |
댓글