집합(Set)
중복되지 않는 순서 없는 항목들의 모음을 말하며, 파이썬에서 집합 연산까지 지원
- 집합 생성
집합명 = {요소}
집합명 = set(요소)
{} or set() # 빈 집합
- 집합 메서드
집합명.add(요소) # 요소 추가
집합명.remove(요소) # 요소 제거
- 집합연산
집합1 | 집합2 # 합집합
집합1 & 집합2 # 교집합
집합1 - 집합2 # 차집합
집합1 ^ 집합2 # 대칭차집합
강제 형변환
int() # 정수형변환
float() # 실수형변환
str() # 문자열변환
불리언(Boolean)이 True일 때
숫자 : 0이 아닌 모든 숫자(정수,실수,복소수 등)
문자열 : 빈 문자열 제외
리스트, 튜플, 집합, 딕셔너리 : 빈 컨테이너 제외
기타 객체 : none 제외
시퀀스 변환
list() # 리스트 변경
tuple() # 튜플 변경
set() # 집합 변경
리스트, 튜플, 집합(셋) 간에 서로 변환 가능
ex) list(튜플)
추출
for idx, value in enumerate(반복 대상): # 인덱스와 값 추출
for key, value in 딕셔너리.items(): # 딕셔너리 키-값 쌍 추출
리스트 컴프리헨션
리스트명 = [표현식 for 요소 in 이터러블 if 조건] # 조건이 참일때 표현식을 거쳐 리스트에 추가
리스트명 = [표현1 if 조건 else 표현2 for 요소 in 이터러블] # 조건이 참이면 표현1, 아니라면 표현2를 리스트에 추가
이터러블 : 반복 가능한 객체 (리스트, 튜플, 집합, 문자열, 딕셔너리, 사용자 정의 클래스)
람다 함수
lambda 인자들: 표현식
# ex
words = ["apple", "banana", "cherry", "grape"]
words.sort(key=lambda word: len(word))
print(words) // ['grape', 'apple', 'banana', 'cherry']
람다 함수 = 익명 함수
장점 : 익명성, 간결함, 임시 사용
- map(함수, 시퀀스)
시퀀스(리스트, 튜플 등)의 각 요소에 대해 지정된 함수를 적용하여, 그 결과를 새로운 시퀀스로 반환
numbers = [1, 2, 3, 4, 5]
new_numbers = list(map(lambda x: x * 2, numbers))
print(new_numbers) # [2, 4, 6, 8, 10]
- filter(함수, 시퀀스)
시퀀스의 각 요소에 대해 주어진 조건을 만족하는 요소들만 걸러내어 새로운 시퀀스로 반환
numbers = [1, 2, 3, 4, 5, 6]
filtered_numbers = list(filter(lambda x: x >= 3, numbers)
print(filtered_numbers) # [3, 4, 5, 6]
'Python 요약' 카테고리의 다른 글
Python 요약 정리(개념 및 함수/메서드) : 클래스, 상속 (2) | 2024.10.08 |
---|