brunch

You can make anything
by writing

C.S.Lewis

by 우리 Oct 08. 2022

자정과 새벽 사이 16

하루가 96시간이면 좋겠다 생각든다면… 컴퓨터 언어 이해하기 좋은 때

2022년 10월 8일 12시-1시 21분 사이.

*비전공자의 EliceAcademy <Do it! 파이썬 생활 프로그래밍> 공부 기록입니다.


https://www.youtube.com/watch?v=W8QTcesJt_Q

가을밤, 캔들워머에 향초 올려놓고 이 플레이리스트 틀면 점점 포근해지는 기분이 든다.


DAY 16


[실습16] 지문만 출력하기


드라마 대본에서 지문 부분만 쏙쏙 뽑아내주는 정규표현식을 만들어보는 실습이다.


- 문자열 앞에는 r을 붙여준다.

- 공백 없는 영문자는(대소문자 구분 없이) [A-Za-z]와 같이 쓸 수 있다.

- 문자, 숫자, 빈칸 등의 자유로운 반복은 .+ 와 같이 표현할 수 있다.

처음에 어제 했던 것처럼 set, list까지 활용했다가 큰코다쳤다. 그냥 위 코드와 같이 적으면 리스트 형태로 답이 출력된다


[실습17] 특정 단어의 예문만 모아 파일로 저장하기


드라마 대본에서 원하는 단어가 포함된 부분만 찾고, 파일로 저장해보는 실습이다.


복습!

- read(n) 함수는 파일로부터 해당 위치의 문자 n개를 읽어오게 한다.

- writelines는 한꺼번에 모든 줄을 '쓸 때' 사용한다.

- readlines는 한꺼번에 모든 줄을 '읽어올 때' 사용한다.

문제로 넘어가 보면...

이번 문제는 좀 오래 걸렸다. 혼자 낸 아이디어들로 잘 해결되지 않아 구글링해봐야 했던...
i for i in ~ 방식의 활용이 익숙지 않다. 자꾸 re.match를 먼저 쓰고 .group()을 붙여 저장하려 하는데 그러면 오류가 난다

최종 답안본은 아래와 같다.

위 코드는 17번째 줄에서, 문제가 '출력하라'고 했는데 print를 적지 않았기 때문에, 답이 불완전하다. 아래는 해당 부분을 수정한 버전이다.

최종 답안본! 

벌써부터 헷갈린다. 변수니 객체니 하는 정의들의 차이점이 가물가물해지기 시작했다. 이번 실습을 해보면서, 정의에 따라 명령어를 활용하는 방법이 다름을 뼈저리게 느꼈다. 형태에 적절하지 않은 언어를 사용하면 에러만 뜨곤 했던 것이다. 정의별 자료구조 등을 이해하는 것이 왜 응용단계에서 점점 더 중요한지 알 수 있었다. 잘못된 정의의 이해는 호흡이 긴 코드를 적을 때 자칫 다 꼬여버릴 수 있다(바로 내 얘기인 듯). 날 잡고 공부해야 될 부분인 것 같다. 일단 지금 당장은 전반적인 프로그래밍을 훑는 과정이니까 넘어가 본다.




실습 17까지 마치면 이제 이번 단락의 연습문제로 넘어간다! 연습문제를 끝내면 다음 시리즈로 넘어갈 수 있다. 조금만 기다려라 다음 시리즈! 혹시 여기까지 같이 공부를 진행해온 분들이 계시다면 여러분도 모두 화이팅입니다~! 같이 다음 시리즈도 헤쳐나가봐요!!

작가의 이전글 자정과 새벽 사이 15
작품 선택
키워드 선택 0 / 3 0
댓글여부
afliean
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari