≣ 목차
변수
- 무언가 담는 바구니와 같은 의미
- 변수의 자료형
- 정수(int)
- 실수(float)
- 문자열(str)
- 리스트(list)
- 튜플(tuple)
- 딕셔너리(dict)
파이썬의 내장함수
- 이미 파이썬에서 만들어져 있는 함수
https://docs.python.org/3/library/functions.html
리스트의 다양한 메서드(Methods)
리스트란?
1. 리스트(List)란?
- 리스트는 파이썬에서 가장 자주 사용되는 데이터 구조 중 하나입니다. 여러 항목들을 담을 수 있는 가변(mutable)한 시퀀스(sequence)입니다.
- 대괄호 **[ ]**를 사용하여 리스트를 만들 수 있습니다.
2. 리스트의 기본 구조
- 리스트는 여러 값을 순서대로 담을 수 있습니다.
- 각 값은 쉼표로 구분되며, 대괄호 안에 들어갑니다.
- append(): 리스트에 항목을 추가합니다.
- extend(): 리스트에 다른 리스트의 모든 항목을 추가합니다.
- insert(): 리스트의 특정 위치에 항목을 삽입합니다.
- remove(): 리스트에서 특정 값을 삭제합니다.
- pop(): 리스트에서 특정 위치의 값을 제거하고 반환합니다.
- index(): 리스트에서 특정 값의 인덱스를 찾습니다.
- count(): 리스트에서 특정 값의 개수를 세어줍니다.
- sort(): 리스트의 항목들을 정렬합니다.
- reverse(): 리스트의 항목들을 역순으로 뒤집습니다.
슬라이싱
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 1. 일부분만 추출하기
print(my_list[2:5]) # 출력: [3, 4, 5]
# 2. 시작 인덱스 생략하기 (처음부터 추출)
print(my_list[:5]) # 출력: [1, 2, 3, 4, 5]
# 3. 끝 인덱스 생략하기 (끝까지 추출)
print(my_list[5:]) # 출력: [6, 7, 8, 9, 10]
# 4. 음수 인덱스 사용하기 (뒤에서부터 추출)
print(my_list[-3:]) # 출력: [8, 9, 10]
# 5. 간격 설정하기 (특정 간격으로 추출)
print(my_list[1:9:2]) # 출력: [2, 4, 6, 8]
# 6. 리스트 전체를 복사하기
copy_of_list = my_list[:]
print(copy_of_list) # 출력: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 7. 리스트를 거꾸로 뒤집기
reversed_list = my_list[::-1]
print(reversed_list) # 출력: [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
# 리스트에서 홀수 번째 인덱스의 값들 출력하기
my_list = [10, 20, 30, 40, 50, 60, 70, 80, 90]
odd_index_values = my_list[1::2]
print("홀수 번째 인덱스의 값들:", odd_index_values) # 출력: [20, 40, 60, 80]
정렬
# 숫자로 이루어진 리스트 정렬 예시
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5]
numbers.sort()
print("정렬된 리스트:", numbers) # 출력: [1, 1, 2, 3, 4, 5, 5, 6, 9]
# 문자열로 이루어진 리스트 정렬 예시
words = ['apple', 'banana', 'orange', 'grape', 'cherry']
words.sort()
print("정렬된 리스트:", words) # 출력: ['apple', 'banana', 'cherry', 'grape', 'orange']
# 내림차순으로 리스트 정렬 예시
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5]
numbers.sort(reverse=True)
print("내림차순으로 정렬된 리스트:", numbers) # 출력: [9, 6, 5, 5, 4, 3, 2, 1, 1]
# 리스트의 문자열 길이로 정렬 예시
words = ['apple', 'banana', 'orange', 'grape', 'cherry']
words.sort(key=len)
print("문자열 길이로 정렬된 리스트:", words) # 출력: ['apple', 'grape', 'banana', 'cherry', 'orange']
튜플 사용법
튜플이란?
- 파이썬 튜플은 변경할 수 없는(immutable) 시퀀스(sequence) 자료형으로, 여러 개의 요소를 저장하는 컨테이너입니다.
- 튜플은 리스트와 유사하지만, 한 번 생성된 이후에는 요소를 추가, 삭제, 수정할 수 없습니다.
- 이러한 특성으로 인해 파이썬에서 데이터를 보호하고 싶을 때 주로 사용됩니다.
- 튜플은 소괄호 ()를 사용하여 생성하며, 각 요소는 쉼표 ,로 구분됩니다. 아래는 간단한 튜플을 생성하는 예시입니다.
# 튜플 생성
my_tuple = (1, 2, 3, 4, 1, 2, 3)
# count() 메서드 예제
count_of_1 = my_tuple.count(1)
print("Count of 1:", count_of_1) # 출력: 2
# index() 메서드 예제
index_of_3 = my_tuple.index(3)
print("Index of 3:", index_of_3) # 출력: 2
# 튜플을 리스트로 변경하기
my_tuple = (1, 2, 3, 4, 5)
my_list = list(my_tuple)
print(my_list) # 출력: [1, 2, 3, 4, 5]
# 리스트를 튜플로 변경하기
my_list = [1, 2, 3, 4, 5]
my_tuple = tuple(my_list)
print(my_tuple) # 출력: (1, 2, 3, 4, 5)
딕셔너리
딕셔너리란?
- 파이썬 딕셔너리는 키-값 쌍의 데이터를 저장하는 자료구조로, 중괄호 **{}**로 둘러싸여 있으며 각 요소는 쉼표로 구분됩니다.
- 각 키는 유일해야 하지만 값은 중복될 수 있습니다. 파이썬 딕셔너리는 해시 테이블로 구현되어 있어 키를 사용하여 매우 빠르게 값을 찾을 수 있습니다.
- 다음은 파이썬 딕셔너리의 기본 구조입니다
my_dict = {
'key1': 'value1',
'key2': 'value2',
'key3': 'value3'
}
# 빈 딕셔너리 생성
empty_dict = {}
# 학생 성적표
grades = {
'Alice': 90,
'Bob': 85,
'Charlie': 88
}
# 접근하기
print(grades['Alice']) # 출력: 90
# 값 수정하기
grades['Bob'] = 95
# 요소 추가하기
grades['David'] = 78
# 요소 삭제하기
del grades['Charlie']
# 딕셔너리 생성
my_dict = {'name': 'John', 'age': 30, 'city': 'New York'}
# keys() 메서드 예제
keys = my_dict.keys()
print("Keys:", keys) # 출력: dict_keys(['name', 'age', 'city'])
# values() 메서드 예제
values = my_dict.values()
print("Values:", values) # 출력: dict_values(['John', 30, 'New York'])
# items() 메서드 예제
items = my_dict.items()
print("Items:", items) # 출력: dict_items([('name', 'John'), ('age', 30), ('city', 'New York')])
# get() 메서드 예제
age = my_dict.get('age')
print("Age:", age) # 출력: 30
# pop() 메서드 예제
city = my_dict.pop('city')
print("City:", city) # 출력: New York
print("Dictionary after pop:", my_dict) # 출력: {'name': 'John', 'age': 30}
# popitem() 메서드 예제
last_item = my_dict.popitem()
print("Last item popped:", last_item) # 출력: ('age', 30)
print("Dictionary after popitem:", my_dict) # 출력: {'name': 'John'}
'[업무 지식] > Python' 카테고리의 다른 글
Python / 데이터 집계 (0) | 2024.10.23 |
---|---|
python / boolean indexing (0) | 2024.10.23 |
Python / 코드 핵심 요약 (0) | 2024.10.23 |
Python/약수의 합 (0) | 2024.10.22 |
Python/자릿수 더하기 (0) | 2024.10.22 |