Python에서 유용한 내장 함수들

Python에서 유용한 내장 함수들


목차

  1. 서론
  2. 내장 함수란 무엇인가?
  3. 자주 사용되는 내장 함수
    1. print()
    2. len()
    3. type()
    4. input()
    5. str(), int(), float()
  4. 컬렉션 관련 내장 함수
    1. list(), tuple(), set(), dict()
    2. sum()
    3. max()min()
    4. sorted()
  5. 기타 유용한 내장 함수
    1. enumerate()
    2. zip()
    3. map()filter()
    4. any()all()
  6. 실습 예제
  7. 마무리
  8. 추천 태그

1. 서론

Python은 매우 강력하고 직관적인 언어로, 다양한 내장 함수를 제공합니다. 이러한 내장 함수들은 코딩을 더 쉽고 효율적으로 만들어줍니다. 이번 포스팅에서는 초보 개발자도 쉽게 이해할 수 있도록 Python의 유용한 내장 함수들을 소개하겠습니다.


2. 내장 함수란 무엇인가?

내장 함수는 Python에서 기본적으로 제공하는 함수로, 별도의 모듈을 임포트하지 않고도 사용할 수 있습니다. 이러한 함수들은 다양한 작업을 간편하게 수행할 수 있도록 도와줍니다.


3. 자주 사용되는 내장 함수


3.1 print()

print() 함수는 데이터를 콘솔에 출력하는 데 사용됩니다.


print("Hello, Python!")

3.2 len()

len() 함수는 객체(리스트, 문자열 등)의 길이를 반환합니다.


my_list = [1, 2, 3, 4]
print(len(my_list))  # 출력: 4

3.3 type()

type() 함수는 객체의 타입을 반환합니다.


print(type(10))        # 출력: <class 'int'>
print(type("Hello"))   # 출력: <class 'str'>

3.4 input()

input() 함수는 사용자로부터 입력을 받습니다.


name = input("이름을 입력하세요: ")
print(f"안녕하세요, {name}님!")

3.5 str(), int(), float()

이 함수들은 데이터 타입을 변환하는 데 사용됩니다.


num_str = "100"
num_int = int(num_str)
num_float = float(num_str)
print(str(num_int))  # 출력: '100'
print(num_int)       # 출력: 100
print(num_float)     # 출력: 100.0

4. 컬렉션 관련 내장 함수


4.1 list(), tuple(), set(), dict()

이 함수들은 각각 리스트, 튜플, 집합, 딕셔너리를 생성합니다.


my_list = list((1, 2, 3))
my_tuple = tuple([1, 2, 3])
my_set = set([1, 2, 3, 2, 1])
my_dict = dict(name="Alice", age=25)
print(my_list)  # 출력: [1, 2, 3]
print(my_tuple) # 출력: (1, 2, 3)
print(my_set)   # 출력: {1, 2, 3}
print(my_dict)  # 출력: {'name': 'Alice', 'age': 25}

4.2 sum()

sum() 함수는 숫자 시퀀스의 합을 계산합니다.


numbers = [1, 2, 3, 4, 5]
print(sum(numbers))  # 출력: 15

4.3 max()min()

이 함수들은 시퀀스에서 가장 큰 값과 가장 작은 값을 반환합니다.


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

4.4 sorted()

sorted() 함수는 시퀀스를 정렬하여 반환합니다.


numbers = [4, 1, 5, 2, 3]
print(sorted(numbers))          # 출력: [1, 2, 3, 4, 5]
print(sorted(numbers, reverse=True))  # 출력: [5, 4, 3, 2, 1]

5. 기타 유용한 내장 함수


5.1 enumerate()

enumerate() 함수는 시퀀스를 열거 객체로 반환하며, 각 요소에 인덱스를 추가합니다.


fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
    print(index, fruit)
# 출력:
# 0 apple
# 1 banana
# 2 cherry

5.2 zip()

zip() 함수는 여러 시퀀스를 병렬로 묶어줍니다.


names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 35]
for name, age in zip(names, ages):
    print(f"{name} is {age} years old.")
# 출력:
# Alice is 25 years old.
# Bob is 30 years old.
# Charlie is 35 years old.

5.3 map()filter()

map() 함수는 함수를 인수로 받아 시퀀스의 각 요소에 적용하고, filter() 함수는 조건에 맞는 요소만을 반환합니다.


# map() 예제
numbers = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x**2, numbers))
print(squared)  # 출력: [1, 4, 9, 16, 25]

# filter() 예제
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)  # 출력: [2, 4]

5.4 any()all()

any() 함수는 시퀀스의 요소 중 하나라도 참이면 참을 반환하고, all() 함수는 모든 요소가 참이어야 참을 반환합니다.


# any() 예제
print(any([False, True, False]))  # 출력: True

# all() 예제
print(all([True, True, True]))  # 출력: True
print(all([True, False, True]))  # 출력: False

6. 실습 예제


예제 1: 학생 성적 처리 프로그램

학생들의 성적을 입력받아 평균 점수와 최고 점수를 계산하는 프로그램을 작성해보겠습니다.


# 학생 성적 처리 프로그램
scores = []
num_students = int(input("학생 수를 입력하세요: "))

for _ in range(num_students):
    score = int(input("점수를 입력하세요: "))
    scores.append(score)

average_score = sum(scores) / len(scores)
max_score = max(scores)

print(f"평균 점수: {average_score}")
print(f"최고 점수: {max_score}")

예제 2: 파일 단어 개수 세기

파일의 내용을 읽고 각 단어의 개수를 세는 프로그램을 작성해보겠습니다.


# 파일 단어 개수 세기
filename = input("파일명을 입력하세요: ")

try:
    with open(filename, "r") as file:
        content = file.read()
    words = content.split()
    word_count = len(words)
    print(f"파일의 단어 수: {word_count}")
except FileNotFoundError:
    print("파일을 찾을 수 없습니다.")

7. 마무리

이번 포스팅에서는 Python에서 유용한 내장 함수들을 살펴보았습니다. 이러한 함수들은 코드를 간결하고 효율적으로 작성하는 데 큰 도움이 됩니다. 다양한 예제를 통해 내장 함수의 사용법을 익혀보시기 바랍니다.


다음 이전