
프로그램 개발 입문기: 파이썬(Python) 도전
“파이썬? 이름도 귀여운데, 대체 뭘 하는 언어지?”
비전공자인 저에게 프로그래밍은 언제나 ‘남의 일’ 같았습니다. 엑셀 매크로 몇 줄도 복잡해 보였거든요. 그런데 어느 날, 주변에서 “파이썬만큼 쉬운 언어도 없다”며 추천을 해주길래, 호기심이 동해서 도전해 봤습니다. 처음엔 “진짜로 내가 할 수 있을까?” 했는데, 막상 해보니 생각보다 할 만한 구석이 꽤 있더라고요. 이번 글에서는 제가 직접 파이썬에 입문하면서 겪었던 시행착오와, 간단한 스크립트부터 웹 크롤링까지 도전한 경험을 나눠보고자 합니다.

“파이썬? 이름도 귀여운데, 대체 뭘 하는 언어지?”
비전공자인 저에게 프로그래밍은 언제나 ‘남의 일’ 같았습니다. 엑셀 매크로 몇 줄도 복잡해 보였거든요. 그런데 어느 날, 주변에서 “파이썬만큼 쉬운 언어도 없다”며 추천을 해주길래, 호기심이 동해서 도전해 봤습니다. 처음엔 “진짜로 내가 할 수 있을까?” 했는데, 막상 해보니 생각보다 할 만한 구석이 꽤 있더라고요. 이번 글에서는 제가 직접 파이썬에 입문하면서 겪었던 시행착오와, 간단한 스크립트부터 웹 크롤링까지 도전한 경험을 나눠보고자 합니다.
1. 첫 발은 항상 “Hello, World!”에서 시작
환경 세팅
프로그래밍을 아예 몰랐던 시절, 일단 파이썬 설치부터가 큰 산이었어요. 하지만 공식 홈페이지에서 “파이썬 다운로드” 버튼을 클릭하면, 윈도우 기준으로 Installer가 깔끔하게 진행돼서 의외로 수월했습니다.
그리고 에디터를 뭘 써야 할지 고민했는데, 파이참(PyCharm)이나 비주얼 스튜디오 코드(VSCode) 같은 개발 툴도 나중에 알게 되었죠. 초기엔 아무 텍스트 에디터나 파이썬 IDLE를 그냥 썼는데, 결국 요즘은 VSCode에 정착했습니다. 자동 완성, 파일 탐색 등 편의 기능이 많아 입문자도 쓰기 좋더라고요.
Hello, World!
설치가 끝난 후, 가장 먼저 해보는 건 터미널에 print(“Hello, World!”)를 찍어 보는 겁니다. 이 한 줄 출력되는 걸 보고, “오, 드디어 나도 프로그래밍했어!”라고 괜히 설렜죠. 실제로는 아무것도 아니지만, 그 작은 화면이 주는 짜릿함이 은근 크더라고요.
2. 간단한 스크립트 작성: 일상 속 자동화
문자열 다루기, 반복문, 조건문
print(“Hello, World!”) 다음엔 당연히 변수, 자료형, 조건문( if ), 반복문( for, while ) 등을 하나씩 배웠습니다. 강의 영상이나 교재를 따라가다가, 실생활에 바로 써먹을 게 없을까 고민했죠.
그때 떠오른 아이디어가 “매일매일 반복되는 업무를 스크립트로 자동화하면 어떨까?”였습니다. 예를 들어, 특정 CSV 파일에서 특정 열만 뽑아 정리한다거나, 텍스트 파일에서 불필요한 문구를 일괄 삭제하는 등의 작업을 파이썬으로 시도했는데, 생각보다 코드가 길지 않았어요. open(파일).read(), split(), replace() 같은 문자열 처리 함수들을 조합하면 의외로 간단히 목표를 달성할 수 있었습니다.
엑셀 파일 다루기
업무 쪽으로 조금 더 확장해 보니, openpyxl 같은 라이브러리를 활용해 엑셀 파일도 파이썬으로 조작할 수 있다는 걸 알게 됐어요. 특정 셀 값을 읽어 통계를 내거나, 여러 개의 엑셀 파일을 하나로 합치는 스크립트를 짜서 동료들에게도 뿌듯하게 자랑했던 기억이 납니다.
물론 비전공자 시선에서 코드 자체는 여전히 낯설었지만, 필요한 기능을 공식 문서나 구글 검색으로 찾아가며 ‘복붙’하고 수정하는 과정이, 점차 “아, 이러면 되는구나!”라는 원리를 깨닫게 해주더군요.
3. 웹 크롤링에 손대기: “다른 사이트 데이터를 가져와 볼까?”
Requests, Beautiful Soup 등 라이브러리 발견
어느 날, 제가 자주 보는 뉴스 사이트에서 기사를 일일이 복사·붙여넣기하며 정리하다 “이거 자동으로 되면 얼마나 좋을까?” 하는 생각이 들었습니다. 그때 파이썬의 요청(requests)과 HTML 파싱(Beautiful Soup, bs4)을 사용하면 웹 페이지 내용을 손쉽게 가져올 수 있다는 사실을 알게 됐습니다.
처음에 코드를 보며 “HTML 태그를 찾아서 원하는 부분만 추출한다고?” 하고 의문이 생겼지만, 정작 라이브러리를 써보니 크게 어렵지는 않았어요. 예를 들어, 다음과 같은 흐름이죠:
requests.get(URL)로 페이지 HTML 가져오기
BeautifulSoup(가져온 HTML, ‘html.parser’)로 파싱
soup.find_all(‘태그’, {‘속성명’: ‘속성값’}) 등으로 원하는 부분 추출
이 과정을 반복하면 특정 기사 제목, 날짜, 저자명 등을 쉽게 긁어올 수 있었습니다.
코드 예시
import requests
from bs4 import BeautifulSoup
url = ‘http://example.com’
response = requests.get(url)
if response.status_code == 200:
soup = BeautifulSoup(response.text, ‘html.parser’)
titles = soup.find_all(‘h2′, class_=’news-title’)
for t in titles:
print(t.get_text())
else:
print(“Failed to fetch page.”)
이런 식으로 하니까, 원하는 뉴스 타이틀이 콘솔에 줄줄이 나오는 걸 보며 “와, 웹사이트에서 데이터를 자동으로 뽑아오다니!”라고 감탄했습니다.
주의할 점
웹 크롤링은 무작정 많은 요청을 보내면 서버에 부담을 줄 수 있어, robots.txt 규정이나 사이트 이용 약관을 존중해야 해요. 과도한 트래픽을 만들지 않도록 time.sleep()을 적절히 넣거나, API가 있으면 공식 API를 활용하는 게 바람직합니다.
4. 시행착오 & 디버깅 이야기
‘IndentationError: unexpected indent’
파이썬은 들여쓰기(스페이스나 탭)를 코드 구조로 파악하기에, 실수로 탭이 섞이거나 공백 개수가 달라지면 오류가 납니다. 초반에는 “아니 이걸 누가 구분하라고!” 하며 속 터졌지만, 차츰 에디터가 자동 정렬해주면서 적응하게 되더라고요.
한글 인코딩, 문자열 처리 문제
웹 크롤링 중 한글 사이트에서 response.text를 출력하면 깨지거나, CSV 파일로 저장 시 글자가 ‘????’가 되는 일이 있었어요. 이를 해결하려면 response.encoding을 체크하거나, encoding=’utf-8-sig’ 형태로 파일을 저장해야 한다는 걸 뒤늦게 알았습니다.
가비지 코드와 반복문
몇 줄 안 되는 코드부터 시작했는데, 기능이 늘어날수록 구조가 제멋대로 엉켜서, 나중엔 제가 짠 코드를 저 자신이 못 알아보는 사태가… 그래서 함수로 묶고, 모듈로 나누는 습관을 조금씩 길렀어요. “클린 코드”가 어떤 의미인지 비전공자 입장에서도 실감하게 되더군요.
5. 파이썬으로 느낀 점: “문턱이 생각보다 낮다”
문법이 직관적
‘오류가 뜨면 그 메시지가 꽤 친절하고’, ‘세미콜론(;)이 안 붙어도 되고’, ‘괄호 중첩이 적어서 가독성이 좋다’ 등 파이썬은 입문자의 진입장벽을 많이 낮춰준다는 생각이 들었습니다.
라이브러리 생태계가 풍부
엑셀, 웹 크롤링, 데이터 분석(pandas, numpy), 웹 프레임워크(플라스크, 장고) 등등 “이런 거 하고 싶다!” 싶은 게 있으면 십중팔구 라이브러리가 이미 존재해요. 덕분에 스스로 모든 로직을 짤 필요 없이 가져다 쓰기만 해도 기본 기능을 구현할 수 있죠.
작게 시작해도 무궁무진한 확장성
저는 비전공자로, 처음엔 단순 텍스트 처리와 웹 크롤링 정도만 해볼 생각이었는데, 몇 달 지나니 데이터 시각화나 머신러닝 라이브러리에도 관심이 가더라고요. 파이썬 한 언어만 익히면, 굉장히 다양한 분야를 맛볼 수 있다는 점이 매력적으로 다가왔습니다.
6. 앞으로 도전하고 싶은 것들
간단한 웹 사이트 만들기
플라스크(Flask)나 장고(Django)를 쓰면 로컬 서버를 띄워, 데이터베이스와 연동한 웹 애플리케이션을 구현할 수 있다고 하네요. 크롤링한 데이터를 저장해두고, 웹 페이지로 확인하는 서비스를 만들어 볼 예정입니다.
데이터 분석, 머신러닝
pandas나 scikit-learn, 텐서플로 같은 라이브러리를 조금씩 공부해보면, ‘데이터 전처리 → 모델 학습 → 예측’까지 해볼 수 있다고 합니다. 아직은 문턱이 높지만, 파이썬이 가능성을 많이 열어줬다는 느낌이에요.
마치며: 비전공자도 파이썬 시작, 생각보다 괜찮다!
처음에는 파이썬 입문이 이렇게 재밌으리라고 상상도 못 했어요. “코드? 알파벳 나열?” 이런 식으로만 봤던 제가, 어느덧 문자열 처리 스크립트, 웹 크롤러까지 만들어 보고 있습니다. 물론 아직 깊이 있는 프로젝트는 못 해봤지만, 작은 성취들이 쌓이면서 “나도 프로그래밍 조금이나마 할 수 있네?”라고 자신감이 생겼다는 게 가장 큰 수확이죠.
비전공자라고 망설이시는 분들도, 한 번 파이썬에 발을 들여놓으면 “어, 이 정도면 할 만한데?” 싶은 순간이 꼭 찾아올 겁니다. 참고할 자료와 예제 코드가 워낙 풍부하니, 구글 검색과 공식 문서를 통해 차근차근 나아가 보세요. 코딩을 몰라도, 일단 따라 해보다 보면 어느새 데이터를 다루고, 웹에서 정보를 얻고, 유용한 툴을 만들 수 있게 됩니다.
저도 아직 갈 길이 멀지만, 파이썬 덕분에 프로그래밍에 대한 장벽이 많이 허물어진 건 확실하네요. 모두에게 ‘함께 배우는 재미’를 느낄 수 있는 파이썬 라이프를 추천드리며, 더 흥미로운 프로젝트로 다시 인사드릴 날을 기대해봅니다!
