📌 Python 학습 과정 – 이해와 반복의 중요성
·
Python
📌 Python 학습 과정 – 이해와 반복의 중요성✅ 1. 왜 프로그래밍이 이렇게 어려울까?프로그래밍은 한 번에 쉽게 이해되는 분야가 아닙니다.조건문, 반복문, 함수, 재귀, 자료구조 등 많은 개념들이 서로 연결되어 있어 복잡하게 느껴질 수 있습니다.특히, 머리로만 이해하려고 하면 더 어려워질 수 있습니다.❗️ 정상적인 과정입니다.처음엔 "왜 이렇게 이해가 안 될까?"라는 고민이 생기는 게 정상입니다.하지만 이런 혼란은 누구나 겪는 과정이며, 반복을 통해 극복할 수 있습니다.✅ 2. 지금 하고 있는 학습 방법은 잘하고 있는 걸까?✔️ 지금처럼 이론과 코드의 흐름을 먼저 이해하려는 과정은 정말 잘하고 있는 겁니다!무작정 코드를 따라 쓰는 것보다, '왜 이렇게 동작하는가'를 고민하는 과정이 훨씬 실력 향상..
✅ 개발자로서 실력을 향상시키는 방법 (함수와 내장 함수 활용)
·
Python
📌 Python 함수 심화 – 실력 향상과 함수화 연습✅ 1. return을 사용하는 이유와 역할값을 반환하기 위해 사용: 함수가 실행된 결과값을 호출한 위치로 전달.함수 종료: return을 만나면 함수가 즉시 종료되고, 이후 코드는 실행되지 않음.def add(a: int, b: int) -> int: return a + bresult = add(3, 5)print(result)출력 결과8✅ 2. 마이크로 모듈화와 함수화 연습함수를 작은 기능 단위로 쪼개어 재사용성과 유지보수성을 높이기.def is_even(number: int) -> bool: return number % 2 == 0def square(number: int) -> int: return number ** 2def p..
[[OZ코딩스쿨] 초격차 캠프 - 10일차 (함수) Chapter 6-12. 타입 어노테이션과 힌트
·
Python
📌 Python 함수 심화 – Chapter 6-12. 타입 어노테이션과 힌트✅ 1. 파이썬의 동적 프로그래밍파이썬은 동적 프로그래밍 언어로, 인터프리터가 실행 시 타입을 추론.변수의 타입을 자유롭게 변경할 수 있음.num = 10print(type(num))num = "10"print(type(num))출력 결과설명: 파이썬은 타입을 고정하지 않기 때문에 값에 따라 타입이 자유롭게 변경됨.❗ 대규모 프로젝트에서는 이러한 유연성이 버그로 이어질 수 있어, 타입 힌팅을 통해 명시적으로 타입을 지정하는 것이 좋음.✅ 2. 타입 힌팅 (주석 방식)def oz(x, y, h): # type: (int, int, int) -> int return x * y * hoz(10, 10, 10)출력 결과10..
[[OZ코딩스쿨] 초격차 캠프 - 10일차 (함수) Chapter 6-11. 제너레이터
·
Python
📌 Python 함수 심화 – Chapter 6-11. 제너레이터✅ 1. 제너레이터란?제너레이터는 이터레이터를 생성하는 객체.함수 내부에서 yield 키워드를 사용해 정의.이터레이터는 next() 메서드를 사용해 순차적으로 값을 반환할 수 있는 객체.특징yield가 있는 함수는 호출 시 제너레이터 객체를 반환.next() 호출 시 yield를 만나기 전까지 실행되며, yield 값을 반환하고 실행을 일시 중지함.더 이상 반환할 값이 없으면 StopIteration 예외가 발생.def test(): print("제너레이터 실습 코드입니다.") yield "test"print("첫번째 출력")test()print("두번째 출력")test()print(test())출력 결과첫번째 출력두번째 출력설..
[[OZ코딩스쿨] 초격차 캠프 - 10일차 (함수) Chapter 6-10. 람다
·
Python
📌 Python 함수 심화 – Chapter 6-10. 람다✅ 1. 람다란?람다(lambda) 함수는 이름이 없는 익명 함수.주로 일회성으로 사용할 함수에 활용되며, 코드를 간결하게 작성할 수 있음.기본 구조lambda 매개변수: 반환값📌 함수 매개변수로 전달하는 예시def oz_call(function): for i in range(5): function()def talk(): print("파이썬 이건 또 무슨 개념이야?")oz_call(talk)출력 결과파이썬 이건 또 무슨 개념이야?파이썬 이건 또 무슨 개념이야?파이썬 이건 또 무슨 개념이야?파이썬 이건 또 무슨 개념이야?파이썬 이건 또 무슨 개념이야?✅ 2. 함수를 매개변수로 사용하는 내장함수📌 map() 함수 예시de..
[[OZ코딩스쿨] 초격차 캠프 - 10일차 (함수) Chapter 6-9. 튜플
·
Python
📌 Python 함수 심화 – Chapter 6-9. 튜플✅ 1. 튜플이란?**튜플(Tuple)**은 리스트와 비슷한 시퀀스 자료형.리스트와의 차이점: 요소의 수정, 추가, 삭제가 불가능하여 **불변성(Immutable)**을 가짐.**소괄호 ()**를 이용하여 생성.# 튜플 생성oz_tuple = (1, 2, 3)print(oz_tuple)print(oz_tuple[0])print(oz_tuple[1])print(oz_tuple[2])출력 결과(1, 2, 3)123✅ 2. 튜플 데이터 변경 불가oz_tuple = (1, 2, 3)oz_tuple[0] = 5 # 오류 발생출력 결과TypeError: 'tuple' object does not support item assignment설명: 튜플은 불변..
[[OZ코딩스쿨] 초격차 캠프 - 10일차 (함수) Chapter 6-8. 조기 리턴 피보나치 수열
·
Python
📌 Python 함수 심화 – Chapter 6-8. 조기 리턴✅ 1. 조기 리턴이란?함수에서 return은 함수의 종료를 알리는 역할을 함.return을 만나면 함수는 즉시 종료되고, 함수를 호출한 위치로 돌아감.메모이제이션을 활용한 피보나치 수열 예제에서 조기 리턴의 중요성 확인 가능.✅ 2. 피보나치 수열 – 조기 리턴 적용 전 코드memo = { 1: 1, 2: 1}count = 0def oz_fibo(n): print(f'피보나치 수열 {n}을 구하는 중입니다.') global count count += 1 if n in memo: return memo[n] # 조기 리턴을 통해 이미 계산된 값 반환 # 값이 없는 경우 재귀적으로 계산 ..
[[OZ코딩스쿨] 초격차 캠프 - 10일차 (함수) Chapter 6-7. 재귀 함수
·
Python
📌 Python 함수 심화 – Chapter 6-7. 재귀 함수✅ 1. 재귀함수란?재귀함수란 함수 안에서 자신을 다시 호출하는 함수.예시: 팩토리얼5! = 5 × 4 × 3 × 2 × 1일반적으로 반복문이나 재귀함수로 구현 가능.📌 반복문을 이용한 팩토리얼def oz_factorial(n): output = 1 for i in range(1, n + 1): output *= i return outputn = int(input("구하고자 하는 팩토리얼의 수를 입력해주세요."))print(f'{n}의 결과는 {oz_factorial(n)}입니다.')출력5의 결과는 120입니다.✅ 2. 재귀함수를 이용한 팩토리얼def oz_factorial(n): if n == 0: ..