본문 바로가기
혼공학습단/파이썬

[Python] 리스트, 딕셔너리, 범위 자료형에 대해

by 노 코딩 노 라이프 2023. 7. 17.

오늘은 리스트, 딕셔너리, 범위 자료형에 대해 알아보도록 하겠습니다!!


1. 리스트

리스트(List)는 파이썬에서 가장 많이 사용되는 데이터 구조 중 하나입니다. 리스트는 여러 개의 값을 담을 수 있는 순서가 있는 변경 가능한(mutable) 자료형입니다. 리스트는 대괄호([])를 사용하여 생성하며, 각 요소들은 쉼표(,)로 구분됩니다.

예시 코드를 살펴보겠습니다.

my_list = [1, 2, 3, 4, 5]

리스트는 동일한 값을 중복해서 포함시킬 수 있고, 서로 다른 자료형의 요소들을 함께 포함시킬 수도 있습니다.

 

예를 들어, 다음과 같이 정수와 문자열을 포함하는 리스트를 만들 수 있습니다

mixed_list = [1, 'two', 3.14, True, 'five']

리스트는 인덱스(index)를 사용하여 개별 요소에 접근할 수 있습니다. 
인덱스는 0부터 시작하며, 요소의 위치를 나타냅니다.

 

예를 들어, my_list[0]은 리스트의 첫 번째 요소를 나타냅니다.

print(my_list[0])  # 출력: 1
print(my_list[2])  # 출력: 3

리스트는 변경 가능한(mutable) 자료형이므로, 요소를 추가하거나 제거하는 등의 수정 작업이 가능합니다. 



몇 가지 유용한 리스트 관련 함수와 메서드를 살펴보겠습니다!

  • len(list) : 리스트의 길이(요소의 개수)를 반환합니다.
  • list.append(element) : 리스트의 끝에 요소를 추가합니다.
  • list.insert(index, element) : 주어진 인덱스 위치에 요소를 삽입합니다.
  • list.remove(element) : 리스트에서 첫 번째로 일치하는 요소를 제거합니다.
  • list.pop(index) : 주어진 인덱스 위치의 요소를 제거하고 반환합니다.
  • list.index(element) : 주어진 요소의 인덱스를 반환합니다. (첫 번째로 일치하는 요소의 인덱스)
  • list.count(element) : 주어진 요소의 개수를 반환합니다.
my_list = [1, 2, 3, 4, 5]

print(len(my_list))  # 출력: 5

my_list.append(6)
print(my_list)  # 출력: [1, 2, 3, 4, 5, 6]

my_list.insert(0, 0)
print(my_list)  # 출력: [0, 1, 2, 3, 4, 5, 6]

my_list.remove(3)
print(my_list)  # 출력: [0, 1, 2, 4, 5, 6]

popped_element = my_list.pop(2)
print(popped_element)  # 출력: 2
print(my_list)  # 출력: [0, 1, 4, 5, 6]

index = my_list.index(5)
print(index)  # 출력: 3

count = my_list.count(1)
print(count)  # 출력: 1

이처럼 리스트는 많은 유연성을 제공하여 데이터를 효율적으로 관리하고 조작할 수 있도록 해줍니다.

 

 

2. 딕셔너리

파이썬에서 딕셔너리(Dictionary)는 키-값(key-value) 쌍으로 데이터를 저장하고 관리하는 자료구조입니다. 
딕셔너리는 중괄호({})를 사용하여 생성하며, 각 키와 값은 콜론(:)으로 구분됩니다.

예를 들어, 다음과 같이 딕셔너리를 생성할 수 있습니다:

my_dict = {'name': 'John', 'age': 25, 'city': 'New York'}

위의 딕셔너리는 세 개의 키-값 쌍을 포함하고 있습니다. 'name'은 키이고 'John'은 그에 대응하는 값입니다. 이런 식으로 각 키와 값을 쌍으로 묶어 딕셔너리에 저장합니다.


딕셔너리에서는 키를 사용하여 해당 키에 대응하는 값을 검색할 수 있습니다. 딕셔너리의 값은 변경 가능한(mutable) 자료형이므로, 키를 통해 해당 값에 접근하고 수정할 수 있습니다.

예를 들어, 딕셔너리에서 'name'이라는 키에 대응하는 값을 가져오려면 다음과 같이 작성할 수 있습니다:

name_value = my_dict['name']
print(name_value)  # 출력: John

 

새로운 키-값 쌍을 딕셔너리에 추가하려면 다음과 같이 할 수 있습니다

my_dict['occupation'] = 'Engineer'
print(my_dict)  # 출력: {'name': 'John', 'age': 25, 'city': 'New York', 'occupation': 'Engineer'}

 

딕셔너리에서 키-값 쌍을 제거하려면 del 키워드를 사용합니다

del my_dict['age']
print(my_dict)  # 출력: {'name': 'John', 'city': 'New York'}

 

딕셔너리는 keys(), values(), items()와 같은 메서드를 제공하여 딕셔너리의 키, 값, 키-값 쌍을 순회하거나 검색하는 데 사용할 수 있습니다.

keys = my_dict.keys()
values = my_dict.values()
items = my_dict.items()
print(keys)    # 출력: dict_keys(['name', 'city'])
print(values)  # 출력: dict_values(['John', 'New York'])
print(items)   # 출력: dict_items([('name', 'John'), ('city', 'New York')])

딕셔너리는 데이터를 효율적으로 검색하고 관리하는 데 사용되며, 다양한 프로그래밍 시나리오에서 유용하게 활용됩니다.

 

 

3. 범위 자료형

파이썬에서 범위(Range)는 연속된 숫자의 시퀀스를 나타내는 자료형입니다. 
범위는 시작(start), 끝(stop), 및 증가값(step)으로 정의됩니다. 
범위는 대개 반복문에서 특정 횟수만큼 반복하거나 리스트를 생성하는 데 사용됩니다.

범위는 range() 함수를 사용하여 생성됩니다. range() 함수는 세 가지 매개변수를 받을 수 있습니다

: 시작(start), 끝(stop), 및 증가값(step). 매개변수를 모두 제공하지 않으면 기본값으로 시작은 0이고 증가값은 1입니다.

다음은 범위를 생성하는 방법에 대해 알아보겠습니다.

my_range = range(1, 10, 2)

위의 예시에서 my_range는 1부터 10까지의 범위를 나타내며, 각 요소는 2씩 증가합니다. 따라서 my_range는 [1, 3, 5, 7, 9]와 같은 값을 가지게 됩니다.


범위는 반복문과 함께 자주 사용됩니다. 예를 들어, for 반복문에서 범위를 사용하여 특정 횟수만큼 반복할 수 있습니다

for i in range(5):
    print(i)

위의 예시에서 range(5)는 0부터 4까지의 범위를 생성하므로, for 반복문은 0부터 4까지의 값을 출력합니다.

또한, 범위를 사용하여 리스트를 생성할 수도 있습니다. list() 함수를 사용하여 범위를 리스트로 변환할 수 있습니다

my_list = list(range(1, 6))
print(my_list)  # 출력: [1, 2, 3, 4, 5]

위의 예시에서 range(1, 6)는 1부터 5까지의 범위를 생성하며, list() 함수를 사용하여 이를 리스트로 변환하였습니다.

범위는 반복문 및 숫자 시퀀스를 처리하는 다양한 상황에서 유용하게 사용될 수 있습니다.