변수4 : 리스트
- 대괄호 [ ]를 사용해 리스트를 만들 수 있음
- 리스트는 여러 값을 순서대로 담을 수 있음
4-1. 리스트 인덱싱
: 리스트에서 특정 값에 접근하는 방법
# 리스트 생성
numbers = [1, 2, 3, 4, 5]
# 첫 번째 요소에 접근하기
first_number = numbers[0]
print("First number:", first_number)
# 두 번째 요소에 접근하기
second_number = numbers[1]
print("Second number:", second_number)
# 마지막 요소에 접근하기
last_number = numbers[-1]
print("Last number:", last_number)
# 음수 인덱스를 사용하여 역순으로 요소에 접근하기
second_last_number = numbers[-2]
print("Second last number:", second_last_number)
4-2. 리스트의 다양한 매소드
- append(): 리스트에 항목을 추가합니다. (무조건 맨 뒤에 추가)
- extend(): 리스트에 다른 리스트의 모든 항목을 추가합니다. (무조건 맨 뒤에 추가)
- insert(): 리스트의 특정 위치에 항목을 삽입합니다. (원하는 위치에 추가)
- remove(): 리스트에서 특정 값을 삭제합니다.
- pop(): 리스트에서 특정 위치의 값을 제거하고 반환합니다.
- index(): 리스트에서 특정 값의 인덱스를 찾습니다.
- count(): 리스트에서 특정 값의 개수를 세어줍니다.
- sort(): 리스트의 항목들을 정렬합니다.
- reverse(): 리스트의 항목들을 역순으로 뒤집습니다.
4-3. 리스트 값 삭제
del : 몇 번째 위치의 것을 제거할 것인가를 설정
# 리스트의 항목 삭제
del my_list[0]
print("첫 번째 항목 삭제 후 리스트:", my_list)
# 리스트 내 값들의 모든 항목 제거
my_list.clear()
print("모든 항목 제거 후 리스트:", my_list)
4-4. 리스트 값 변경(중첩된 리스트도 가능)
인덱싱을 활용하여 특정 위치의 값을 다른 값으로 변경
my_list = ['apple', 'banana', 'cherry', 'date', 'elderberry']
# 리스트 값 변경하기
my_list[3] = 'dragonfruit'
print(my_list) # 출력: ['apple', 'banana', 'cherry', 'dragonfruit', 'elderberry']
4-5. 리스트 고급 사용법
1) 슬라이싱
사용 방법 : list [ start : end : step ] : start부터 end까지를 가져옴
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]
2) 정렬
sort( ) : 오름차순 정렬, 리스트의 항목들을 정렬하는데 사용
sort(reverse=True) : 내림차순 정렬
sort(key=len) : 문자열 길이 순으로 정렬
변수5 : 튜플
: 변경할 수 없는 시퀀스 자료형. 한 번 생성된 이후에는 요소를 추가, 삭제, 수정할 수 없다. 데이터 불변성
- 소괄호 ( )를 사용함
- 리스트와 매우 유사하나 데이터불변성이 차이점
- 주로 데이터를 보호하고 싶을 때 사용
5-1. 튜플의 인덱싱
my_tuple = (1, 2, 3, 'hello', 'world')
print(my_tuple[0]) # 첫 번째 요소에 접근
print(my_tuple[-1]) # 마지막 요소에 접근
print(my_tuple[2:4]) # 인덱스 2부터 3까지의 요소를 슬라이싱
5-2. 튜플에서 자주 사용하는 매서드
- count( ) : 지정된 요소의 개수를 반환
- index( ) : 지정된 요소의 인덱스를 반환
# 튜플 생성
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
튜플을 합치거나 반복해 새로운 튜플을 생성할 수 있음
5-3. 튜플🔁리스트
- 튜플->리스트 : list( )함수
- 리스트->튜플 : tuple( )
5-4. 변하면 안되는 개인정보 데이터를 튜플로 변수에
# 데이터 표현 예시
record = ('John', 30, 'john@example.com')
데이터 불변성과 일관성을 유지해줌
변수5 : 딕셔너리
: 키(항목) - 값 쌍의 데이터를 저장하는 자료 구조
- 중괄호 { } 사용, 각 요소는 쉼표로 구분
# 빈 딕셔너리 생성
empty_dict = {}
# 학생 성적표
grades = {
'Alice': 90,
'Bob': 85,
'Charlie': 88
}
# 접근하기
print(grades['Alice']) # 출력: 90
# 값 수정하기
grades['Bob'] = 95
# 요소 추가하기
grades['David'] = 78
# 요소 삭제하기
del grades['Charlie']
가독성을 위해 중괄호{ } 를 띄워쓴다
5-1 딕셔너리에서 자주 사용되는 메서드
keys(): 모든 키를 dict_keys 객체로 반환합니다.
values(): 모든 값을 dict_values 객체로 반환합니다.
items(): 모든 키-값 쌍을 (키, 값) 튜플로 구성된 dict_items 객체로 반환합니다.
get(): 지정된 키에 대한 값을 반환합니다. 키가 존재하지 않으면 기본값을 반환합니다.
pop(): 지정된 키와 해당 값을 딕셔너리에서 제거하고 값을 반환합니다.
popitem(): 딕셔너리에서 마지막 키-값 쌍을 제거하고 반환합니다.
'문과생의 파이썬' 카테고리의 다른 글
[Pandas] 인덱스(행), 컬럼(열) 기초 (0) | 2024.08.07 |
---|---|
[Pandas] 데이터 불러오기, 데이터 확인하기 (3) | 2024.07.22 |
[파이썬 문제] 라이브세션 과제 풀이 (0) | 2024.07.12 |
[데파종] 데이터분석 파이썬 종합반 3주차 (조건문, 반복문) (0) | 2024.07.04 |
[데파종] 데이터분석 파이썬 종합반 1주차 (변수의 자료형 - 문자형, 숫자열) (0) | 2024.07.04 |