이번 포스팅에서는 실무에서 자주 쓰이는 파이썬 함수 25개 의 설명과 사용예시,
그리고 실무 프로젝트에서 어떻게 사용하는지에 대해 알아보겠습니다.
그 외에 파이썬의 연사자 와 함수 에 대해 궁금하시면 아래 포스팅을 같이 참고해주세요
✅ 연산자 문법 정리
[ 파이썬 ] 비교 연산자 문법 정리 ( ==, !=, >, <, >=, <= ) 및 예제
[파이썬] 산술 연산자 문법 정리 ( + , - , * , / , % , **, // ) 및 예제
[ 파이썬 ] 논리 연산자 문법 정리 ( AND,OR,NOT ) 및 예제
[ 파이썬 ] 할당 연산자 문법 정리 ( =,+=,-=,/=,//=,%=,*=,**= ) 및 예제
[ 파이썬 ] 비트 연산자 문법 정리 ( &,|,^,~,<<,>> ) 및 실무 예제
✅ 함수 문법 정리
[ 파이썬 ] len() 함수 사용법 및 실제 프로젝트 예제
[ 파이썬 ] join() 함수 사용법 및 실제 프로젝트 예제
[ 파이썬 ] print 함수에서 사용되는 형식 지정자 및 예제( %f, %d, %s,%x,%% 등 )
✅ 개념 정리
# 1. len()
데이터 구조의 길이를 반환합니다. 리스트, 튜플, 딕셔너리, 문자열 등의 길이를 측정할 때 사용됩니다.
len() 예시
data = [1, 2, 3, 4, 5]
print(len(data)) # 출력: 5
🌙실무 사용처
데이터의 길이를 빠르게 파악해야 할 때, 예를 들어 데이터베이스 쿼리 결과의 레코드 수를 파악하거나 문자열의 길이 제한을 확인할 때 유용합니다.
# 2. print()
콘솔에 데이터를 출력하는 함수로, 디버깅과 로깅 등에 자주 사용됩니다.
print() 예시
message = "Hello, World!"
print(message) # 출력: Hello, World!
🌙실무 사용처
코드의 특정 부분에서 변수의 값을 출력하여 디버깅하거나, 로그 메시지를 출력할 때 유용합니다 .
# 3. type()
객체의 자료형을 반환합니다.
type() 예시
number = 42
print(type(number)) # 출력: <class 'int'>
🌙실무 사용처
데이터 타입을 확인하여 조건에 맞는 처리를 해야 할 때, 특히 데이터 전처리 과정에서 유용하게 사용됩니다.
# 4. map()
반복 가능한 객체의 각 요소에 특정 함수를 적용하여 새로운 반복 가능한 객체를 생성합니다.
map() 예시
numbers = [1, 2, 3, 4]
result = list(map(lambda x: x * 2, numbers))
print(result) # 출력: [2, 4, 6, 8]
🌙실무 사용처
데이터의 모든 요소에 동일한 변환을 적용해야 할 때 유용하며, 예를 들어 대량의 데이터에 정규화나 변환을 수행할 때 자주 사용됩니다.
# 5. filter()
조건에 맞는 요소들만 걸러냅니다.
filter() 예시
numbers = [1, 2, 3, 4, 5]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers) # 출력: [2, 4]
🌙실무 사용처
데이터 필터링이 필요한 경우, 예를 들어 결측치가 있는 데이터만 걸러내거나 특정 조건을 만족하는 데이터를 추출할 때 유용합니다.
# 6. sum()
숫자의 합계를 계산합니다.
sum() 예시
numbers = [10, 20, 30]
print(sum(numbers)) # 출력: 60
🌙실무 사용처
재무 데이터의 총합을 구하거나, 대규모 데이터의 합산 작업을 수행할 때 유용합니다.
# 7. sorted()
반복 가능한 객체의 요소를 정렬하여 반환합니다.
sorted() 예시
numbers = [5, 2, 3, 1, 4]
print(sorted(numbers)) # 출력: [1, 2, 3, 4, 5]
🌙실무 사용처
데이터를 오름차순 또는 내림차순으로 정렬해야 할 때, 예를 들어 사용자 목록을 이름순으로 정렬하거나 판매량을 기준으로 정렬할 때 유용합니다.
# 8. enumerate()
반복문에서 인덱스와 요소를 동시에 반환합니다.
enumerate() 예시
fruits = ['apple', 'banana', 'cherry']
for index, fruit in enumerate(fruits):
print(index, fruit)
# 출력:
# 0 apple
# 1 banana
# 2 cherry
🌙실무 사용처
데이터 리스트를 다루는 반복문에서 인덱스가 필요한 경우, 예를 들어 테이블 데이터를 처리하면서 행 번호를 출력할 때
유용합니다.
# 9. zip()
여러 반복 가능한 객체의 요소를 병렬로 묶어줍니다 .
zip() 예시
names = ['Alice', 'Bob', 'Charlie']
scores = [85, 90, 95]
for name, score in zip(names, scores):
print(name, score)
# 출력:
# Alice 85
# Bob 90
# Charlie 95
🌙실무 사용처
여러 리스트에서 데이터를 병렬로 다루어야 할 때, 예를 들어 사용자 이름과 점수를 한 번에 묶어 데이터를 처리할 때 유용합니다.
# 10. open()
파일을 열고 파일 객체를 반환합니다.
open() 예시
with open('sample.txt', 'r') as file:
content = file.read()
print(content)
🌙실무 사용처
데이터 파일을 읽거나 쓸 때 필수적인 함수로, 예를 들어 로그 파일을 생성하거나 데이터를 파일에 저장할 때 사용됩니다.
# 11. range()
특정 범위의 숫자 시퀀스를 생성합니다
range() 예시
for i in range(5):
print(i)
# 출력: 0, 1, 2, 3, 4
🌙실무 사용처
반복문에서 정해진 횟수만큼 루프를 실행할 때 유용합니다. 예를 들어, 데이터 처리를 반복할 때나 특정 범위 내에서 인덱스를 생성할 때 사용됩니다.
# 12. set()
중복이 없는 유일한 요소로 구성된 집합을 생성합니다.
set() 예시
numbers = [1, 2, 2, 3, 4, 4]
unique_numbers = set(numbers)
print(unique_numbers) # 출력: {1, 2, 3, 4}
🌙실무 사용처
리스트나 다른 데이터 구조에서 중복 요소를 제거해야 할 때 유용하며, 예를 들어 중복 데이터 제거 후 고유 데이터를 분석할 때 사용됩니다.
# 13. max()와 min()
리스트, 튜플, 집합 등의 반복 가능한 객체에서 최대값 또는 최소값을 반환합니다.
max() 와 min() 예시
numbers = [10, 20, 5, 15]
print(max(numbers)) # 출력: 20
print(min(numbers)) # 출력: 5
🌙실무 사용처
데이터에서 가장 큰 값이나 작은 값을 빠르게 찾을 때, 예를 들어 매출 데이터에서 최대 매출과 최소 매출을 확인할 때 사용됩니다.
# 14. abs()
숫자의 절대값을 반환합니다.
abs() 예시
number = -10
print(abs(number)) # 출력: 10
🌙실무 사용처
데이터 분석이나 수학적 계산에서 음수의 절대값을 사용해야 할 때 유용합니다. 예를 들어, 손익 계산 시 손실을 절대값으로 표현할 때 사용됩니다.
# 15. round()
숫자를 지정된 소수점 자리로 반올림합니다.
round() 예시
number = 5.6789
print(round(number, 2)) # 출력: 5.68
🌙실무 사용처
소수점을 제한해서 표시하거나 통계 데이터를 정리할 때 사용됩니다. 예를 들어 금융 데이터에서 소수점 2자리까지 반올림할 때 유용합니다.
# 16. any()와 all()
any()는 반복 가능한 객체 내에 하나라도 참인 값이 있으면 True를 반환하고, all()은 모든 값이 참이어야 True를 반환합니다.
any() 와 all() 예시
numbers = [0, 1, 2, 3]
print(any(numbers)) # 출력: True
print(all(numbers)) # 출력: False
🌙실무 사용처
조건 체크 시 유용하며, 예를 들어 리스트의 모든 요소가 특정 조건을 만족하는지 혹은 일부가 만족하는지 빠르게 확인할 때 사용됩니다.
# 17. sorted()와 reverse()
데이터 구조의 요소들을 정렬하거나 역순으로 배치합니다.
sorted()와 reverse() 예시
numbers = [5, 2, 9, 1]
print(sorted(numbers)) # 출력: [1, 2, 5, 9]
numbers.reverse()
print(numbers) # 출력: [9, 5, 2, 1]
🌙실무 사용처
데이터를 정렬하여 보고하거나 특정 순서대로 정렬이 필요한 경우, 예를 들어 사용자를 알파벳순으로 정렬할 때 유용합니다.
# 18. reversed()
반복 가능한 객체를 역순으로 반환합니다.
reversed() 예시
numbers = [1, 2, 3, 4]
for num in reversed(numbers):
print(num)
# 출력: 4, 3, 2, 1
🌙실무 사용처
역순 정렬이 필요한 경우, 예를 들어 시간순으로 정렬된 데이터를 최신 데이터부터 확인할 때 사용됩니다.
# 19. format()
문자열을 포맷팅하여 특정 형식으로 데이터를 표현할 수 있습니다.
format() 예시
name = "Alice"
age = 25
print("Name: {}, Age: {}".format(name, age))
# 출력: Name: Alice, Age: 25
🌙실무 사용처
데이터 보고서를 작성할 때, 문자열에 변수를 넣어서 포맷팅할 때 유용합니다.
# 20. isinstance()
객체가 특정 클래스나 데이터 타입에 속하는지 확인합니다.
isinstance() 예시
value = 10
print(isinstance(value, int)) # 출력: True
🌙실무 사용처
특정 데이터 타입을 검증할 필요가 있는 경우, 예를 들어 함수나 메서드에 입력된 인자의 타입이 올바른지 확인할 때 유용합니다.
# 21. lambda
간단한 함수를 한 줄로 정의할 수 있는 익명 함수 생성 방식입니다.
lambda 예시
add = lambda x, y: x + y
print(add(5, 3)) # 출력: 8
🌙실무 사용처
map, filter와 같은 함수와 결합하여 간단한 연산을 수행할 때 유용하며, 복잡한 함수를 생성할 필요가 없는 경우 간단한 코드 작성에 사용됩니다.
# 22. reduce()
리스트와 같은 반복 가능한 객체에 누적 합계를 계산하여 하나의 결과를 반환합니다.
reduce() 예시
from functools import reduce
numbers = [1, 2, 3, 4]
result = reduce(lambda x, y: x * y, numbers)
print(result) # 출력: 24
🌙실무 사용처
데이터를 누적 처리할 때, 예를 들어 리스트의 모든 값의 곱이나 합을 구할 때 유용합니다.
# 23. next()
반복 가능한 객체의 다음 항목을 반환합니다.
next() 예시
iterator = iter([1, 2, 3])
print(next(iterator)) # 출력: 1
🌙실무 사용처
반복자를 통해 데이터를 하나씩 처리할 때 유용하며, 데이터 스트림에서 데이터를 하나씩 읽어올 때 사용할 수 있습니다
# 24. join()
문자열을 특정 구분자로 연결합니다.
join() 예시
words = ["Hello", "World"]
sentence = " ".join(words)
print(sentence) # 출력: "Hello World"
🌙실무 사용처
리스트의 문자열 요소들을 하나의 문자열로 결합할 때, 예를 들어 CSV 포맷으로 변환하거나 보고서 생성 시 사용됩니다.
# 25. split()
문자열을 특정 구분자로 나누어 리스트로 반환합니다
split() 예시
sentence = "Python is fun"
words = sentence.split()
print(words) # 출력: ['Python', 'is', 'fun']
🌙실무 사용처
텍스트 데이터를 분석하기 위해 특정 패턴을 기준으로 데이터를 나눌 때 사용됩니다. 예를 들어 로그 파일의 라인을 구분할 때 유용합니다.