728x90
반응형
※ 출처: https://swexpertacademy.com/
리스트 list
📒반환
data_list = list(range(10, 60, 10))
print(data_list) #[10, 20, 30, 40, 50]
data = 20
print(data_list.index(data)) #1 -> 인덱스 반환
📒추가
data_list1, data_list2 =[10, 20, 30], [40, 50]
print(data_list1 + data_list2) #[10, 20, 30, 40, 50] -> 이어붙이기
print(data_list2 * 3) #[40, 50, 40, 50, 40, 50]
# 값 추가
print(data_list1.append(50)) #None -> 반환값이 없음
print(data_list1) #[10, 20, 30, 50]
# index 위치에 값 추가
data_list1.insert(3, 40)
print(data_list1) #[10, 20, 30, 40, 50]
# list 형태로 값 추가
data_list1.extend([60, 70])
print(data_list1) #[10, 20, 30, 40, 50, 60, 70]
# list 항목을 추가
data_list1.append([80,90])
print(data_list1) #[10, 20, 30, 40, 50, 60, 70, [80, 90]]
📒변경
data_list = [10, 20, 30, 40]
data_list[2] = 29
print(data_list) #[10, 20, 29, 40]
#범위의 마지막 값은 실제 index 값이 아님
data_list[1:3] = [12, 15]
print(data_list) #[10, 12, 15, 40] #index 1,2 위치 값을 12,15로 변경
#범위를 벗어난 값은 추가됨 -> 리스트 크기 변경
data_list[1:3] = [12, 15, 20]
print(data_list) #[10, 12, 15, 20, 40]
📒제거
data_list = list(range(10, 110, 10))
print(data_list) #[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
#값 일부 제거
del data_list[5:] #index
print(data_list) #[10, 20, 30, 40, 50]
data = data_list.pop(0) #index
print(data) #10
print(data_list) #[20, 30, 40, 50]
data_list.remove(30) #value
print(data_list) #[20, 40, 50]
#값 전체 제거
data_list.clear()
del data_list[:]
📒데이터 확인
data_list = [10, 20, 30, 40, 50, 50, 50]
# 리스트 객체 내 데이터 유무
if 50 in data_list:
print("True")
elif 50 not in data_list:
print("False")
# 리스트 객체 내 데이터 갯수
print(data_list.count(50)) #3
print(data_list.count(100)) #0
📒활용
- list data 사용
data_list = list(range(0, 11, 2))
print(data_list) #[0, 2, 4, 6, 8, 10]
for data in data_list:
print(data, end=" ") #0 2 4 6 8 10
print() #개행
# 리스트를 enumeration 객체로 변환. index와 value 반환 가능
for idx, val in enumerate(data_list):
print(idx, val)
#
0 0
1 2
2 4
3 6
4 8
5 10
- 내포 List comprehension
:파이썬에서는 for문과 if문을 한 라인에 작성하여 코드를 직관적으로 만들고 실행속도를 높혀주는 기법
data_list = list(range(1, 5))
data_list2 = []
for data in data_list:
if data % 2 == 0:
data_list2.append(data)
# List comprehension
data_list3 = [data for data in data_list if data % 2 == 0]
print(data_list2 == data_list3) #True
# [for 중첩]
data_list4 = []
for x in data_list:
if x % 2 == 1:
for y in data_list:
if y % 2 == 0:
data_list4.append(x * y)
# List comprehension
data_list5 = [x * y for x in data_list if x % 2 == 1
for y in data_list if y % 2 == 0]
print(data_list4 == data_list5) #True
str = "HelLo-!"
data_list6 = [c.lower() for c in str]
print(data_list6) #['h', 'e', 'l', 'l', 'o', '-', '!']
튜플 tuple
- 리스트 list 와 다른 점: 튜플 tuple은 값을 지정하고 변경할 수 없음
- 리스트와 사용 함수가 유사함
data_tuple = tuple(range(1, 6))
print(data_tuple) #(1, 2, 3, 4, 5)
data_tuple2 = tuple(range(0, 11, 2))
for data in data_tuple2:
print(data, end = " ") #0 2 4 6 8 10
print()
for idx, value in enumerate(data_tuple2):
print(idx,value)
#List comprehension
data_list3 = tuple(data for data in data_tuple if data % 2 == 0)
반응형
300x250
728x90
반응형
'Data Science > Python' 카테고리의 다른 글
[SWEA] 자료구조 셋, 딕셔너리 (0) | 2025.02.09 |
---|---|
[SWEA] 자료구조 리스트, 튜플 - 연습문제(6273,6275,6277,6286,6288,6289,6290,6295,6297,6305) (0) | 2025.02.09 |
[SWEA] 함수의 기초 - 연습문제(6319,6320) (0) | 2025.02.08 |
[SWEA] 흐름과 제어 for,while - 연습문제(6230,6246,6247,6253) (0) | 2025.02.08 |
[SWEA] 흐름제어 if - 연습문제(6219,6220,6221,6222) (0) | 2025.02.06 |