file을 읽어 tuple 형식으로 만들려고 하는데 문자열에 따옴표(")도 있고 공란도 있고 개행 문자도 있고 할 때 한 번에 바꾸는 방법은???
Source Code
#!/usr/bin/env python2
# -*- coding: UTF-8 -*-
#kate: syntax Python ;
def main():
with open('go.list') as f:
mylist = [tuple(map(lambda str:str.replace('\"', '').strip(), i.split(','))) for i in f]
print mylist
if __name__ == "__main__":
main()
간략히 설명하면
1. 파일(go.list)을 읽고(f)
2. 한 행 씩 읽어(i)
3. 문자열(str)을 콤마(,)로 분리하는데
4. 이때, 문자열(str)의 따옴표(")를 공란('')으로 치환하고
5. 앞 뒤 공란, 개행 관련 문자('\r', '\n')을 제거를 전처리 후 진행
6. 처리 결과를 가지고 tuple을 생성
TEST
input
"a ", "/home/busyman/1"
"b", " /home/busyman/2"
"c", "/home/busyman/3"
"d", "/home/busyman/4 "
"e", "/home/busyman/5"
output
$ ./read_tuple.py
[('a', '/home/busyman/1'), ('b', '/home/busyman/2'), ('c', '/home/busyman/3'), ('d', '/home/busyman/4'), ('e', '/home/busyman/5')]
'놀기 > Python' 카테고리의 다른 글
Beautiful Soup으로 오늘의 판(네이트) 게시물 목록 긁어오기 (0) | 2021.07.19 |
---|---|
Beautiful Soup 설치 및 기본 사용법 (Ubuntu 20.04 기준) (0) | 2021.07.19 |
댓글