반응형

초보자를 위한 파이썬 내장함수 완벽 가이드

여러분 혹시,
abs, len, map, filter 이런 단어들 들어본 적 있으신가요?
이 짧고 강력한 단어들이 바로,
파이썬 내장함수의 세계로 가는 열쇠입니다!

 

 

안녕하세요! 파이썬을 배우고 계신 모든 초보자분들께 꼭 필요한 꿀정보를 전해드릴 시간이에요 😊
프로그래밍을 하다 보면 ‘반복되는 계산’이나 ‘데이터 필터링’ 같은 작업을 자주 하게 되죠.

이때마다 코드를 길게 써야 한다면 너무 비효율적이겠죠?

하지만 걱정 마세요! 파이썬에는 이미 잘 만들어진 내장 함수(built-in functions)가 있어서, 개발자가 직접 함수를 만들 필요 없이 아주 간단하게 원하는 작업을 처리할 수 있어요.

이번 글에서는 자주 쓰이는 파이썬 내장 함수들을 실전 예제와 함께 하나씩 짚어보며 소개할게요.
코딩을 처음 시작하신 분도, 파이썬을 어느 정도 만져보신 분도 모두 이해할 수 있도록 아주 친절하게 준비했습니다.

끝까지 함께 해보세요! 🚀

1. 🧠 파이썬 내장함수란 무엇인가요?

파이썬을 처음 접할 때 가장 매력적인 부분 중 하나가 바로 “내장 함수”입니다.

별다른 설정 없이도 바로 쓸 수 있고, 작업을 빠르게 처리할 수 있어요.

그럼 ‘내장함수’가 정확히 뭘까요?

✔️ 내장함수(built-in function)의 정의

파이썬 내장함수란 파이썬 인터프리터에 기본으로 포함되어 있어서 import 없이 사용할 수 있는 함수입니다. 쉽게 말해, 파이썬을 설치하면 자동으로 따라오는 “기본 도구함”이라고 생각하면 돼요.

이 함수들은 기본적인 연산(예: 절댓값 계산, 합계 구하기), 자료형 변환(예: 리스트로 바꾸기),

조건 판단(예: 값이 모두 참인지 확인) 등 우리가 자주 사용하는 작업들을 아주 짧고 간단하게 처리할 수 있게 도와줘요.

📋 대표적인 내장함수 예시

함수명 설명 예시
abs(x) 숫자의 절댓값 반환 abs(-10) → 10
len(x) 시퀀스 자료형의 길이 반환 len("hello") → 5
max(x) 최댓값 반환 max([1, 3, 2]) → 3
sum(x) 전체 합계 반환 sum([1, 2, 3]) → 6
sorted(x) 정렬된 리스트 반환 sorted([3, 1, 2]) → [1, 2, 3]

💡 왜 내장함수를 꼭 알아야 할까요?

  • 코드가 간결해져요. 복잡한 연산을 단 한 줄로 처리할 수 있어요!
  • 에러가 줄어들어요. 이미 검증된 함수라 안정성이 높아요.
  • 학습과 유지보수가 쉬워요. 코드 구조가 깔끔해서 협업에도 좋아요.

앞으로 여러분이 어떤 프로젝트를 하더라도 내장 함수는 꼭 만나게 될 거예요.

그러니까, 지금 확실히 익혀두는 게 정말 중요합니다!

 

 

2. 🔢 숫자 다루기: abs, round, divmod

프로그래밍을 하다 보면 숫자를 다루는 일이 정말 많죠.

예를 들어

절댓값을 구하거나, 소수를 반올림하거나, 몫과 나머지를 구해야 할 때 말이에요.

이런 상황에서 파이썬 내장함수 abs, round, divmod를 잘 활용하면 코드가 훨씬 간단해지고 실수도 줄일 수 있어요!

🧮 abs(x): 절댓값 구하기

abs() 함수는 숫자를 입력받아 그 숫자의 절댓값을 반환해요.

음수든 양수든 상관없이 항상 양수 결과를 주죠.

x = -42
print(abs(x))  # 출력: 42

🟰 round(x[, ndigits]): 반올림

round() 함수는 소수점을 가까운 정수로 반올림해 줍니다.

ndigits를 지정하면 소수 몇 번째 자리까지 반올림할지 선택할 수 있어요.

print(round(3.14159))        # 출력: 3
print(round(3.14159, 2))     # 출력: 3.14
print(round(5.5))            # 출력: 6 (파이썬의 반올림 규칙 적용)

 

💡 참고: 파이썬은 정확히 .5인 경우 짝수 쪽으로 반올림하는 ‘은행가 반올림’을 적용해요.

              그래서 round(4.5)는 4, round(5.5)는 6이 됩니다!

➗ divmod(a, b): 몫과 나머지 한 번에

divmod(a, b)는 두 숫자를 나누어서 몫과 나머지를 한꺼번에 튜플로 반환해줘요.

사실상 a // ba % b를 동시에 계산하는 함수예요.

result = divmod(10, 3)
print(result)         # 출력: (3, 1)
몫, 나머지 = result
print(몫)             # 출력: 3
print(나머지)         # 출력: 1

📌 이 함수들은 언제 쓰면 좋을까요?

  • abs: 게임에서 점수 차이 계산할 때
  • round: 가격을 반올림해서 보여줄 때
  • divmod: 페이지네이션 구현 시 (총 페이지 계산 등)

이제 숫자를 다루는 기본 내장함수는 꽤 익숙해졌죠?

다음 섹션에서는 데이터 타입과 변환을 위한 함수들을 알아볼 거예요.

파이썬에서 데이터를 확인하고 다루는 데 아주 중요한 친구들이랍니다!

 

 

3. 🔍 데이터 확인과 변환: len, type, list, tuple

프로그래밍을 하면서 가장 많이 하는 작업 중 하나는 데이터의 형태 확인과 변환입니다.

파이썬에서는 len(), type(), list(), tuple() 같은 내장함수를 통해 아주 쉽게 처리할 수 있어요.

이 함수들은 특히 초보자가 자료형 개념을 잡는 데 큰 도움이 됩니다.

📏 len(x): 데이터의 길이 확인

len() 함수는 리스트, 문자열, 튜플 등 시퀀스 자료형의 길이를 반환합니다.

즉, 몇 개의 요소가 들어 있는지 알려주는 함수예요.

print(len("hello"))     # 출력: 5
print(len([1, 2, 3]))    # 출력: 3
print(len((10, 20)))     # 출력: 2

🏷️ type(x): 자료형 확인

type() 함수는 어떤 자료형인지 확인할 수 있는 함수예요.

코드를 디버깅하거나, 입력된 값이 어떤 타입인지 헷갈릴 때 정말 유용합니다.

print(type("안녕"))       # 출력: <class 'str'>
print(type([1, 2, 3]))     # 출력: <class 'list'>
print(type(123))          # 출력: <class 'int'>

🔁 list(x), tuple(x): 자료형 변환

list()tuple() 함수는 각각 데이터를 리스트와 튜플로 바꿔주는 역할을 합니다.

예를 들어

문자열을 문자 하나하나로 쪼개 리스트로 만들거나, 리스트를 튜플로 변환할 수 있어요.

print(list("abc"))          # 출력: ['a', 'b', 'c']
print(tuple([1, 2, 3]))      # 출력: (1, 2, 3)
print(list((10, 20)))        # 출력: [10, 20]

📌 언제 써야 할까요?

  • len(): 사용자 입력이나 리스트 길이를 검사할 때
  • type(): 디버깅 시 변수의 타입을 확인할 때
  • list()/tuple(): 타입을 변경해서 원하는 메서드를 사용하거나, 자료의 변형이 필요할 때

이제 데이터의 모양과 형식을 자유자재로 다룰 수 있는 준비가 된 거예요.

다음 장에서는 조건 판단과 반복에 자주 쓰이는 고급 내장함수들(map, filter, all, any)을 파헤쳐볼게요!

 

 

4. 🔁 반복과 조건을 위한 고급 함수: map, filter, all, any

반복문과 조건문을 자주 쓰다 보면 “이거 한 줄로 못 줄일까?” 하는 생각이 들 때가 있어요.

바로 그럴 때 유용한 것이 map(), filter(), all(), any() 같은 고급 내장함수입니다.

이 함수들은 코드를 훨씬 짧고 깔끔하게 만들어주는 파이썬만의 강력한 도구예요.

🧰 map(func, iterable): 반복하며 함수 적용

map()은 반복 가능한 데이터(iterable)의 요소 각각에 함수를 적용해서 새로운 값을 만들어주는 함수예요.

for문 없이 반복 작업을 처리할 수 있어서 매우 효율적입니다.

numbers = [1, 2, 3, 4]
result = list(map(lambda x: x * 2, numbers))
print(result)  # 출력: [2, 4, 6, 8]

🚿 filter(func, iterable): 조건에 맞는 것만 필터링

filter()조건을 만족하는 값들만 걸러내는 함수입니다.

조건은 함수로 표현하고, 그 함수의 결과가 True인 값만 남겨둡니다.

numbers = [1, 2, 3, 4, 5]
even = list(filter(lambda x: x % 2 == 0, numbers))
print(even)  # 출력: [2, 4]

✅ all(iterable): 모두 참이면 True

all() 함수는 반복 가능한 객체의 요소가 모두 참이면 True를 반환하고, 하나라도 거짓이면 False를 반환해요.

values = [True, True, True]
print(all(values))  # 출력: True

values = [True, False, True]
print(all(values))  # 출력: False

☝️ any(iterable): 하나라도 참이면 True

any() 함수는 하나라도 참이면 True를 반환합니다.

조건 검색, 유효성 검사 등에 자주 쓰이죠.

values = [False, False, True]
print(any(values))  # 출력: True

values = [False, False, False]
print(any(values))  # 출력: False

💡 map vs filter vs all vs any 요약

함수 역할 결과
map() 모든 요소에 함수 적용 리스트 등 반복 가능한 결과
filter() 조건에 맞는 값만 추출 필터링된 리스트
all() 모두 True면 True 불리언 값
any() 하나라도 True면 True 불리언 값

이 함수들을 잘만 쓰면, 복잡했던 코드를 단 1~2줄로 줄일 수 있어요.

특히 데이터 처리나 조건 검사가 많은 작업에서는 진가를 발휘하죠!

이제 조건과 반복에 대한 이해도가 훨씬 높아졌을 거예요.

 

다음 장에서는 정렬과 탐색에 유용한 내장함수들을 살펴보겠습니다. 준비되셨죠? 😎

 

 

5. 📊 정렬과 탐색: max, min, sum, sorted, enumerate

데이터를 다루다 보면 자연스럽게

“가장 큰 값은 뭐지?”, “총합은 얼마일까?”, “정렬이 필요해!” 같은 생각이 들게 돼요.

그럴 때 파이썬 내장함수들이 진가를 발휘합니다.

지금부터 소개할 max(), min(), sum(), sorted(), enumerate()는 데이터 탐색의 핵심 도구예요!

🏆 max(x), min(x): 최대/최소 값 찾기

max() 함수는 가장 큰 값을, min() 함수는 가장 작은 값을 반환합니다.

숫자뿐 아니라 문자열 리스트에서도 적용할 수 있어요.

numbers = [3, 5, 1, 9, 2]
print(max(numbers))  # 출력: 9
print(min(numbers))  # 출력: 1

➕ sum(x): 총합 구하기

sum() 함수는 리스트나 튜플 등 숫자 시퀀스의 합을 간단히 구해주는 함수예요.

루프를 돌며 하나하나 더할 필요 없이 단번에 계산됩니다.

scores = [70, 80, 90]
total = sum(scores)
print(total)  # 출력: 240

🔃 sorted(x): 정렬된 리스트 반환

sorted() 함수는 리스트의 요소들을 오름차순(기본값) 또는 내림차순으로 정렬해 줍니다.

원본 데이터를 바꾸지 않고 새로운 정렬된 리스트를 반환해요.

nums = [4, 1, 7, 3]
asc = sorted(nums)
desc = sorted(nums, reverse=True)
print(asc)   # 출력: [1, 3, 4, 7]
print(desc)  # 출력: [7, 4, 3, 1]

🔢 enumerate(x): 인덱스와 함께 반복

enumerate() 함수는 반복 가능한 객체를 순회하면서 인덱스와 값을 동시에 반환해줍니다.

보통 for문에서 인덱스가 필요한 경우 유용하게 쓰여요.

fruits = ['apple', 'banana', 'cherry']
for idx, val in enumerate(fruits):
    print(idx, val)
# 출력:
# 0 apple
# 1 banana
# 2 cherry

💡 실무에서 이런 식으로 사용돼요

  • max/min: 최고 점수, 최저 온도 찾기
  • sum: 쇼핑몰 장바구니 총합 계산
  • sorted: 이름순/날짜순 정렬
  • enumerate: 번호 매기기, 순위 매기기

여기까지 오셨다면 이제 여러분은 파이썬 내장함수를 실전에 활용할 수 있는 레벨에 도달한 셈이에요!

하지만 아직 끝이 아니죠!

다음 단계에서는 지금까지 배운 내용을 활용해 실전 예제로 정리해보겠습니다.  😊

 

 

6. 🧪 꼭 써봐야 할 실전 예제 모음

지금까지 소개한 파이썬 내장함수들, 이론만 봐서는 감이 잘 안 올 수 있어요.

그래서 준비했습니다! 💡

🎯 예제 1: 짝수만 골라 2배 만들기

nums = [1, 2, 3, 4, 5, 6]
result = list(map(lambda x: x * 2, filter(lambda x: x % 2 == 0, nums)))
print(result)  # 출력: [4, 8, 12]

📘 예제 2: 학생 점수 분석기

scores = [85, 90, 78, 92, 66]
print("총합:", sum(scores))
print("최고점:", max(scores))
print("최저점:", min(scores))
print("평균:", round(sum(scores) / len(scores), 2))

🗂️ 예제 3: 데이터 정렬 및 인덱스 출력

items = ["pear", "apple", "banana"]
sorted_items = sorted(items)
for i, item in enumerate(sorted_items):
    print(f"{i + 1}위: {item}")

✅ 예제 4: 조건 모두 만족 확인하기

conditions = [True, True, True]
if all(conditions):
    print("모든 조건이 충족되었습니다.")
else:
    print("하나 이상의 조건이 미충족입니다.")

🧭 예제 5: 사용자 입력 데이터 변환

user_input = "1,2,3,4,5"
numbers = list(map(int, user_input.split(",")))
print(numbers)  # 출력: [1, 2, 3, 4, 5]

🎉 마무리하며

어떠셨나요?

이렇게나 많은 파이썬 내장함수가 우리의 코드를 더 쉽고 강력하게 만들어줄 수 있다는 사실,

이제 실감 나시죠?

오늘 배운 함수들은 단순히 외워야 할 개념이 아니라 실제 코딩의 효율성과 품질을 높여주는 도구입니다.

이제 여러분은 초보자에서 한 발짝 더 나아간 파이썬 사용자예요.

앞으로는 직접 코딩하면서 이런 함수들을 자연스럽게 활용해보세요!

익숙해질수록 더 창의적인 프로그램을 만들 수 있을 거예요 😄

반응형

+ Recent posts