본문 바로가기

프로그래밍26

파이썬 - 람다 함수와 함수형 프로그래밍 기초 람다 함수의 개념과 기본 구조파이썬에서 람다 함수는 익명 함수를 생성하는 강력한 도구다.이 함수는 단일 표현식으로 구성되며, 간결하고 일회성 사용에 적합하다. 람다 함수의 기본 구조는 다음과 같다.lambda 인자: 표현식 예를 들어, 두 수를 더하는 람다 함수는 다음과 같이 작성할 수 있다add = lambda x, y: x + yresult = add(3, 5) # 결과: 8 이 예시에서 lambda x, y: x + y는 두 인자 x와 y를 받아 그 합을 반환하는 익명 함수를 정의한다.이 함수를 변수 add에 할당하여 일반 함수처럼 사용할 수 있다.람다 함수의 특징과 장점1. 간결성람다 함수는 일반 함수에 비해 매우 간결하게 작성할 수 있다. 특히 한 줄로 표현 가능한 간단한 연산에 유용하다.2... 2024. 12. 1.
파이썬 - 이터레이터(Iterator)와 이터러블(Iterable) 이터레이터와 이터러블JavaScript 개발자라면 반드시 알아야 할 중요한 개념 중 하나가 바로 이터레이터(Iterator)와 이터러블(Iterable)이다. 이 두 개념은 데이터 컬렉션을 효율적으로 순회하고 처리하는 데 핵심적인 역할을 한다. 이 글에서는 이터레이터와 이터러블의 개념, 작동 방식, 그리고 실제 활용 사례를 깊이 있게 살펴볼 것이다.이터레이터 패턴의 역사와 발전이터레이터 패턴은 객체 지향 프로그래밍에서 오래된 디자인 패턴 중 하나다. 이 패턴의 주요 목적은 컬렉션의 내부 구조를 노출하지 않고도 모든 요소에 순차적으로 접근할 수 있게 하는 것이다.JavaScript에서 이터레이터와 이터러블의 개념은 ES6(ECMAScript 2015)에서 공식적으로 도입되었다. 이전 버전의 JavaScri.. 2024. 11. 30.
파이썬 - 정규표현식 정규표현식의 기본정규표현식(Regular Expression)은 문자열을 처리하는 강력한 도구다.파이썬에서는 're' 모듈을 통해 정규표현식 기능을 제공한다.정규표현식을 사용하면 복잡한 문자열 패턴을 간단하게 표현하고 검색, 추출, 치환 등의 작업을 효율적으로 수행할 수 있다.정규표현식의 기본 문법1. 문자 클래스[abc] : a, b, c 중 하나와 매치[a-z]: a부터 z 사이의 모든 소문자와 매치[0-9]: 모든 숫자와 매치2. 메타 문자. : 모든 문자와 매치 (단, 개행 문자 제외)^ : 문자열의 시작$ : 문자열의 끝: 0회 이상 반복: 1회 이상 반복? : 0회 또는 1회 반복{m,n} : m회 이상 n회 이하 반복3. 특수 문자 시퀀스\d : 숫자와 매치\D : 숫자가 아닌 문자와 매치\.. 2024. 11. 30.
파이썬 문자열 포매팅: f-string, str.format(), % 연산자 비교 문자열 포매팅의 중요성프로그래밍에서 문자열 포매팅은 매우 중요한 기능이다.데이터를 사용자에게 보여주거나, 로그를 작성하거나, 다양한 출력 형식을 만들 때 필수적으로 사용된다.파이썬은 여러 가지 문자열 포매팅 방식을 제공하며, 각각의 방식은 고유한 특징과 장단점을 가지고 있다.% 연산자를 이용한 문자열 포매팅% 연산자는 파이썬의 가장 오래된 문자열 포매팅 방식 중 하나다.C 언어의 printf 스타일과 유사하여 다른 언어에서 넘어온 개발자들에게 친숙할 수 있다.기본 사용법name = "Alice"age = 30print("My name is %s and I'm %d years old." % (name, age))장점간단하고 직관적인 구문다른 언어에서 온 개발자들에게 익숙함단점복잡한 포매팅에서 가독성이 떨어.. 2024. 11. 30.
파이썬 - 불변(Immutable)과 가변(Mutable) 객체 1. 불변과 가변 객체의 개념파이썬에서 모든 데이터는 객체로 취급된다. 이 객체들은 크게 두 가지 범주로 나눌 수 있다: 불변(Immutable) 객체와 가변(Mutable) 객체. 이 두 종류의 객체는 메모리 관리와 데이터 조작 방식에서 근본적인 차이를 보인다.2. 불변(Immutable) 객체불변 객체는 한 번 생성된 후에는 그 내용을 변경할 수 없는 객체를 말한다. 파이썬에서 대표적인 불변 객체로는 정수(int), 부동소수점(float), 문자열(str), 튜플(tuple), 불리언(bool) 등이 있다. 이러한 객체들은 한 번 생성되면 그 값을 직접적으로 수정할 수 없다.예를 들어, 문자열을 살펴보자.s = "Hello"s[0] = "h" # TypeError: 'str' object does .. 2024. 11. 29.
파이썬 - Set Intro파이썬의 집합(Set)은 수학적 집합 개념을 구현한 자료구조로, 중복되지 않은 요소들의 모음이다.집합은 리스트나 튜플과 달리 순서가 없고, 인덱싱을 지원하지 않는다.하지만 빠른 멤버십 테스트와 중복 제거 기능으로 많은 상황에서 유용하게 사용된다. 1. 집합 생성집합을 생성하는 방법은 여러 가지가 있다.a) 중괄호 사용my_set = {1, 2, 3, 4, 5}b) set() 함수 사용my_set = set([1, 2, 3, 4, 5])c) 집합 컴프리헨션my_set = {x for x in range(10) if x % 2 == 0} 주의할 점은 빈 집합을 생성할 때 중괄호만 사용하면 딕셔너리가 생성된다.빈 집합을 만들려면 set() 함수를 사용해야 한다.empty_set = set() # 빈.. 2024. 11. 29.