Python len() 함수 완전 가이드: 기본부터 응용까지 상세 해설

1. 시작

Python은 그 단순함과 다용도 기능으로 널리 사용되는 프로그래밍 언어입니다. 그 중에서도 가장 기본적이고 중요한 함수 중 하나가 len() 함수입니다. 이 함수는 리스트, 문자열, 사전 등 데이터 타입에 포함된 요소의 수나 문자열의 길이를 얻기 위해 사용되며, Python 프로그래밍에서 매우 자주 등장합니다. len() 함수는 간단한 구문이지만 많은 데이터 조작에 유용한 강력한 도구입니다. 본 기사에서는 len()의 기본 사용법부터 응용, 그리고 자주 발생하는 오류와 그 대처 방법까지 자세히 설명합니다. 구체적인 코드 예시도 다수 소개하여 초급자부터 중급자까지의 Python 사용자에게 도움이 되는 내용을 제공합니다.
Ad

2. Python len() 함수란?

2.1 len() 함수의 기본 구문

Python의len() 함수는 시퀀스형이나 매핑형에 대해 그 길이와 요소 수를 반환하는 내장 함수입니다. 사용법은 매우 간단하며, 다음과 같은 구문으로 사용합니다.
len(객체)
이 객체에는 리스트, 문자열, 튜플, 사전, 집합 등을 지정할 수 있습니다. 각각의 데이터 타입에 대해len() 함수가 반환하는 값은 해당 데이터에 포함된 요소의 수입니다.

2.2 len() 함수의 사용 예

  • 리스트의 길이를 구하는 경우 리스트 내 요소 수를 구하는 가장 간단한 방법이len() 함수입니다.
numbers = [1, 2, 3, 4, 5]
print(len(numbers))  # 출력: 5
  • 문자열의 길이를 구하는 경우 문자열의 길이를 구할 때도len() 함수를 사용할 수 있습니다. 공백이나 기호도 포함되어 카운트됩니다.
text = "안녕, 세계!"
print(len(text))  # 출력: 9
  • 딕셔너리의 요소 수를 구하는 경우 딕셔너리에 대해len()을 사용하면, 키의 수를 반환합니다.
person = {'name': 'John', 'age': 30, 'city': 'New York'}
print(len(person))  # 출력: 3
  • 튜플 및 집합에도 적용 튜플 및 집합의 요소 수도len()으로 쉽게 얻을 수 있습니다.
dimensions = (1920, 1080)
unique_numbers = {1, 2, 3, 4, 5}
print(len(dimensions))        # 출력: 2
print(len(unique_numbers))    # 출력: 5

2.3 len() 함수의 일관성

Python의len() 함수는 다양한 데이터 타입에 일관된 인터페이스를 제공하여, 사용 방법을 다시 배울 필요가 없다는 큰 장점이 있습니다. 이를 통해 여러 데이터 타입을 다루는 프로그램에서도 동일하게 길이를 얻을 수 있어 매우 편리합니다.
Ad
RUNTEQ(ランテック)|超実戦型エンジニア育成スクール

3. len() 함수 사용법 상세

3.1 리스트에 대한 len() 사용 예시

리스트는 Python에서 가장 많이 사용되는 데이터 타입 중 하나입니다. 리스트 내 요소 수를 얻기 위해 len()이 자주 사용되며, 특히 데이터 길이에 따라 동적인 처리가 필요할 때 유용합니다.
fruits = ['apple', 'banana', 'cherry']
print(len(fruits))  # 출력: 3

3.2 문자열에 대한 len() 사용 예시

문자열도 시퀀스 타입 중 하나이며, len()을 사용해 그 길이를 얻을 수 있습니다 멀티바이트 문자(일본어)도 포함하여 문자열의 길이를 얻는 예를 보여줍니다.
greeting = "안녕하세요"
print(len(greeting))  # 출력: 5

3.3 사전에 대한 len() 사용 예시

사전에 len()을 사용하면 해당 사전 내에 존재하는 키의 수를 얻습니다. 사전은 키와 값의 쌍으로 구성되어 있기 때문에, 요소 수라는 개념은 “키의 수”에 해당합니다.
data = {'name': 'Alice', 'age': 25, 'city': 'Tokyo'}
print(len(data))  # 출력: 3

3.4 빈 데이터 타입에 대한 len() 동작

빈 리스트나 사전에도 len()을 사용할 수 있습니다. 이 경우 요소가 존재하지 않으므로 len()0을 반환합니다.
empty_list = []
empty_dict = {}
print(len(empty_list))  # 출력: 0
print(len(empty_dict))  # 출력: 0
Ad

4. 응용편: len()을 사용한 프로그램 예시

4.1 len()을 사용한 루프 처리

리스트와 튜플의 길이에 따라 루프 처리를 할 경우, len() 함수와 range()를 결합함으로써 효율적인 루프 처리가 가능합니다.
fruits = ['apple', 'banana', 'cherry']
for i in range(len(fruits)):
    print(fruits[i])
이 코드는 리스트 fruits 내부의 각 요소를 순서대로 출력합니다.

4.2 조건 분기에서 len()의 활용

len()을 사용하여 리스트나 문자열이 비어 있는지 확인하고, 조건 분기에 활용할 수 있습니다. 특정 조건에서 데이터의 유무에 따라 처리를 전환하는 데 도움이 됩니다.
items = []

if len(items) == 0:
    print("리스트는 비어 있습니다")
else:
    print(f"리스트에는{len(items)}개의 아이템이 있습니다")

4.3 문자열 검증에서 len()의 활용

len() 함수는 사용자 입력을 확인할 때에도 유용합니다. 예를 들어, 비밀번호 길이를 확인하는 경우입니다.
password = input("비밀번호를 입력해주세요: ")

if len(password) < 8:
    print("비밀번호는 8자 이상이어야 합니다")
else:
    print("비밀번호가 승인되었습니다")
Ad
年収訴求

5. 자주 발생하는 오류와 해결 방법

5.1 TypeError: object of type 'int' has no len()

len()은 정수에 적용할 수 없기 때문에 이 오류가 발생합니다. 정수의 길이를 얻으려면 문자열로 변환해야 합니다.
number = 10
print(len(str(number)))  # 출력: 2

5.2 TypeError: object of type 'NoneType' has no len()

None에 대해len()을 사용하면 이 오류가 발생합니다. None 체크를 하거나, 빈 리스트나 문자열로 초기화하면 좋습니다.
my_list = None

if my_list is not None:
    print(len(my_list))
else:
    print("리스트가 존재하지 않습니다")
Ad

6. 요약

Python의len() 함수는, 데이터의 길이와 요소 수를 얻기 위한 기본적이면서도 강력한 도구입니다. 이 글을 통해, len() 함수의 기본 사용법부터 응용, 오류 처리까지 배우고, 특히 실제 프로그램에서 어떻게 사용할 수 있는지 이해했을 것이 아닐까요.

6.1 len() 함수의 편리성

len() 함수는, Python의 많은 데이터 타입에 대해 일관되게 사용할 수 있다는 점이 가장 큰 장점입니다. 리스트, 문자열, 사전, 튜플, 집합 등 다양한 데이터 타입에 대해 같은 방법으로 길이를 얻을 수 있기 때문에 특정 데이터 타입에 의존하지 않고 효율적으로 데이터를 조작할 수 있습니다.

6.2 응용적인 사용법과 오류 처리

len() 함수는 리스트의 길이를 얻는 것뿐만 아니라, 루프와 조건 분기에서의 응용, 나아가 사용자 입력 검증에도 사용할 수 있습니다. 또한, 기사에서 소개한 오류 처리 방법을 이해해 두면 실제 개발 중에 발생하기 쉬운 문제에도 유연하게 대응할 수 있습니다. 앞으로도 Python의 기본 함수를 활용하여 보다 효율적이고 오류가 적은 프로그램을 만들어 나갑시다. len()은 그 첫걸음이 되는 도구입니다.
Ad
年収訴求