리스트 개요
-대괄호 [] 사용하며 서로 다른 데이터 저장 가능
-순서가 있고 중복 허용 가능
-데이터 변경 가능한 mutable 한 특징
-문자열과 동일한 인덱싱과 슬라이싱 사용 가능
'''
집합형
2. 리스트
- 표현 [값1, 값2,...]
- 타입 type([10,20]) ==> <class 'list'>
==> 리스트는 클래스로 만들어짐
- 특징: 순서 있고 중복 허용, 값 변경 가능
- 함수 정리
print(dir(list))
'append', 'clear', 'copy', 'count', 'extend', 'index',
'insert', 'pop', 'remove', 'reverse', 'sort'
'''
#1. 리스트 설정 방법
str_list =["홍길동","이순신"]
int_list = [10,20,30,20] #순서가 있고 중복 허용
mixed_list=[10,"이순신",3.14,True,None]
nested_list1 = [1,2,3,[9,8,7]]
nested_list2 = [[9,8,7],[6,5],[4,3]]
#list() 함수 활용
str_to_list = list("hello")
tuple_to_list=list((5,4,3)) #리스트 안에는 집합형만 들어감
#help(list) list(iterable=(), /)
print(str_list)
print(int_list)
print(mixed_list)
print(nested_list1)
print(nested_list2)
print(str_to_list) #['h', 'e', 'l', 'l', 'o'] 문자열을 한 글자씩 떼어냄
# 2. list 함수
m =[1,2,3]#help(m.append),append(object, /) =이 없으니 필수
# 가.append(값) : 리스트 맨 뒤에 추가
m.append(100)
m.append(88)
m.append([4,3,2])
print(m)
print()
# 나.insert(위치,값) : 리스트 중간에 삽입
m=[1,2,3]
m.insert(0,100)#[100,1,2,3]
m.insert(0,[5,4,2])#[[5,4,2],100,1,2,3]
m.insert(-1,777)#[[5,4,2],100,1,2,777,3] # 역방향도 가능 (위치-1)번째에 삽입
# 다.extend(위치,값) : 병합(merge) ==> 병합할 대상은 동등해야 된다. 집합형 vs 일반형
m = [1,2,3] #집합형
#m.extend(10)# 집합형 vs 일반형 불가
m.extend([10]) #집합형 vs 집합형 가능
m.extend("hello") #집합형 vs 집합형 가능
m.extend((4,3)) #집합형 vs 집합형 가능 [1, 2, 3, 10, 'h', 'e', 'l', 'l', 'o', 4, 3]
print(m)
# 병합할 대상이 리스트로 한정된다면 extend 함수 없이 + (연결연산자) 사용 가능하다.
x=[1,2,3]
x2=[9,8,7]
print(x+x2) #리스트 열끼리 더해지는 것이 아니라 두 리스트가 합쳐진다. [1, 2, 3, 9, 8, 7]
# 라. 포함갯수
m=[1,2,3,4,2,3,2]
print(m.count(2)) #3
print("리스트 전체 갯수",len(m)) #7
'''
리스트 색인
m=[10,9,8,7]
10 9 8 7
순방향 0 1 2 3
역방향 -4 -3 -2 -1
'''
#1. 인덱싱
# 순방향
m=[10,9,8,7]
print(m[0])
print(m[1])
print(m[2])
print(m[3])
#print(m[4]) 없는 위치값 지정하면 IndexError 발생
#역방향
print(m[-1])
print(m[-2])
print(m[-3])
print(m[-4])
# 2. 슬라이싱
#순방향
print(m[0:3])
print(m[:3])
print(m[0:])
print(m[:])
#역방향
print(m[-3:-1])
#step
print(m[::2])
m = [[1,2,3],[4,5,6],[7,8,9]]
#1.인덱싱
#순방향
print(m[0])#[1, 2, 3]
print(m[1])#[4, 5, 6]
print(m[2])#[7, 8, 9]
#역방향
print(m[-1])#[7, 8, 9]
print(m[-2])#[4, 5, 6]
#5값 출력하시오
print(m[1][1])
#2. 슬라이싱
#4,5 값을 슬라이싱으로 출력하시오
print(m[1][:2])
'python' 카테고리의 다른 글
[python] 셋 | 딕셔너리 (1) | 2022.09.22 |
---|---|
[python] 튜플 | 튜플 색인 (1) | 2022.09.22 |
[python] 함수 개념 (0) | 2022.09.22 |
[python] 일반형 - 데이터 형변환 (0) | 2022.09.22 |
[python] 집합형 - 문자열(인덱싱과 슬라이싱) (0) | 2022.09.22 |