TOP
class="layout-aside-left paging-number">
본문 바로가기
끄적끄적/전직 (또는 창업)일기

[전직 일기] #6 본 수업 시작 첫 주

by 기록자_Recordian 2025. 1. 17.
728x90
반응형
이전 일기
 

[전직일기] #5 선수 학습 종료

지난 일기 [전직일기] #4 학원 훈련 시작(은 또 연기)지난 일기 [전직 일기] #3 국취제 1회차 3차 방문지난 일기 [전직 일기] #2 훈련기관 선정 및 고용센터 2차 방문지난 일기 [전직 일기] #1 국민

puppy-foot-it.tistory.com


25년 1월 13일 월요일: 본 수업 시작

 

25년 1월 13일부터 본 수업을 시작했다.

선수 학습 기간 동안에는 보지 못했던 많은 학생분들이 출석했고, 6개월 간 우리를 가르쳐주실 교수님과도 인사를 나눴다.

 

수업의 첫 과목은 프로그래밍에 대한 개념과 파이썬 기초였다.

파이썬 공부를 6개월 넘게 해오고 있지만, 책을 통해 독학을 했기 때문에 기초가 많이 부족할 거라 생각되어 꽤 도움이 되는 수업이 될 듯 하다.


25년 1월 17일 금요일

 

수업의 진도는 꽤 빠른 편인데, 5일이라는 시간 동안 파이썬의 다양한 문법에 대해 배웠다.

그 중 (나 포함) 많은 학생들이 어려워했던 문법은

  • 조건문
  • 반복문
  • 함수

였는데, 오늘 수업을 진행하며 예제를 만드는 동안 내 기초가 정말 부족하다고 느낀 일이 있었다.

 

참고로, 해당 수업 시간에는 리스트 내포, 중첩 반복문에 대해 배우고 있었다.

 

[문제. 1부터 10까지 숫자들의 제곱값을 리스트로 생성하시오.]

라는 문제가 있었고, 중첩 반복문과 리스트 내포를 사용하여 아래와 같이 코드를 작성하였다.

# 중첩 반복문
number_list = []
for i in range(1, 11):
    for j in range(1, 11):
        if i == j:
            number_list.append(i * j)
print(f"중첩 반복문 사용: {number_list}")

# 리스트 내포
number_list_l = [(i * j) for i in range(1, 11) for j in range(1, 11) if i == j]
print(f"리스트 내포 사용: {number_list_l}")

 

그리고 이를 일반 반복문으로 해보려고 했는데,

number_list_gn = []
sc_nums0 = list(range(1, 11))
sc_nums1 = list(range(1, 11))
sc_nums2 = list(range(1, 11))

for i, sc_nums0 in enumerate(sc_nums0):
    num_1st = sc_nums1[i]
    num_2nd = sc_nums2[i]
    if num_1st == num_2nd:
        number_list_gn.append(num_1st * num_2nd)

print(f"일반 반복문 사용: {number_list_gn}")

라는 말도 안 되는 비효율적인 코드로 생성하였다.

 

하지만... 이는 정말, 아주 정말 쉽게 해결할 수 있는데

number_list_gn = []

for i in range(1, 11):
    if i == i:
        number_list_gn.append(i * i)

print(f"일반 반복문 사용: {number_list_gn}")

위의 코드와 비교해보면 아주 아주 간단하고 효율적으로 작성할 수가 있다.

 

마찬가지로 리스트 내포 역시

number_list_s = [(i * i) for i in range(1, 11) if i == i]
print(f"리스트 내포 보완: {number_list_s}")

 

j라는 변수가 필요 없이 이렇게 더 줄여서 작성할 수가 있다.

 

정답은


이렇게 수업을 하면서 어떤 부분이 부족한지, 어떤 부분을 놓쳤는지, 어떤 부분을 잊었는지를 다시금 상기할 수 있어서 매우 도움이 되었다.

 

그리고 수업 초반에는 모든 내용을 기록해가면서 수업을 받았는데, 그렇게 되면 놓치게 되는 부분도 많고 중복되는 부분도 많아지고 또 기록물이 너무 쌓이다보면 그것을 찾아내는 데도 너무 많은 시간이 소모되므로 비효율적이라 느껴져서 기록을 많이 줄이려고 노력하고 있다.

 

우리 반에는 전직 개발자 분들도 계시고, 컴공과 전공분들도 계시는데 그 중 한 분께서 해주신 말씀이 내 머리를 쳤다.

기록은 자기 만족일 뿐,
기록은 그때 뿐이고
기록하고나면 머릿 속에 들어오는 거는 없다.

라고.

그래서 기록은 줄이고 선생님의 강의 내용에 좀 더 집중해보자 라고 수업태도를 바꾸려고 노력하고 있다.

(하지만 버릇이 버릇인지라 기록을 멈추기는 힘들다. 0_0)


다음 일기

 

728x90
반응형