카테고리 없음

[python] 기초 내장 함수 (메서드)

vamosdev12 2025. 10. 16. 23:11

 

🧱 1️⃣ 기본 입출력

 

import sys
input = sys.stdin.readline  # 빠른 입력

 

목적 문법 / 예시

한 줄 입력 s = input().strip()
공백 기준 여러 값 a, b = map(int, input().split())
여러 줄 data = [list(map(int, input().split())) for _ in range(n)]
출력 print(x) 혹은 print(*arr)

 

🧮 2️⃣ 리스트 / 문자열 관련 핵심 메서드

 

분류 주요 메서드 설명 / 예시

정렬 sorted(list) / list.sort() 기본 오름차순
  sorted(list, reverse=True) 내림차순
  sorted(list, key=lambda x: x[1]) 두 번째 원소 기준
문자열 "ABC".lower() / upper() 대소문자 변환
  "a,b,c".split(',') / ' '.join(list) 분할/합치기
  "abcde"[::-1] 문자열 뒤집기
리스트 편의 append, extend, insert, pop, remove, count, index, reverse 자주 쓰임
리스트 컴프리헨션 [x**2 for x in range(10) if x%2==0] 한 줄 반복 생성
슬라이싱 arr[1:4], arr[-1], arr[::-1]  // 시작, 끝, 스텝 // 스텝의 '음수'는 역순 부분배열 추출

 

⚙️ 3️⃣ 내장 함수 (매우 자주 쓰임)

 

함수 설명 / 예시

len(seq) 길이
sum(list)
max(list, key=...), min(...) 최댓값/최솟값
abs(x) 절댓값
map(func, iterable) 요소별 함수 적용
zip(a,b) 두 리스트 병렬 묶기
enumerate(list) 인덱스와 값 함께 반복
any(iterable) / all(iterable) 참값 판정
round(x, n) 반올림
divmod(a,b) 몫·나머지 동시 반환

 

 

🔢 4️⃣ 자료구조 관련 메서드 (collections)

from collections import deque, Counter, defaultdict

 

구조 주요 메서드 예시

deque (큐) append, appendleft, popleft, pop BFS, 회전 구현
Counter (빈도수) Counter(arr) / .most_common(n) 빈도 계산
defaultdict defaultdict(list/int) 자동 기본값 딕셔너리

 

🧩 5️⃣ 수학 / 순열 / 조합

import math, itertools

 

종류 메서드 설명

math math.gcd(a,b) / math.lcm(a,b) 최대공약수 / 최소공배수
  math.ceil, math.floor, math.sqrt 반올림·제곱근
itertools itertools.permutations(arr, r) 순열
  itertools.combinations(arr, r) 조합
  itertools.product(arr, repeat=n) 중복 순열
  itertools.accumulate(arr) 누적합

 

 

🌊 6️⃣ 정렬 기준 커스터마이징 예시

 

arr = [(1, 3), (2, 1), (1, 2)]
arr.sort(key=lambda x: (x[0], -x[1]))
# (1, 3), (1, 2), (2, 1)
# 원소의 첫 번째 값을 기준, 그 다음 원소의 두 번째 값의 음수를 기준

 

🧠 8️⃣ 알고리즘에서 자주 쓰는 문법 패턴

 

상황 패턴

BFS while queue: x,y=queue.popleft()
DFS 재귀 함수 def dfs(x): visited[x]=1; ...
DP dp = [0]*(n+1) / 점화식
이진 탐색 bisect_left(arr, x) / bisect_right(arr, x)
조합 탐색 for c in combinations(arr, k): ...