프론트엔드 정복하기
파이썬 리스트 본문
리스트 인덱싱
: 특정 1개 요소 선택
** index 가 -1이면 : 마지막 요소를 뜻함
square = [1,2,3]
print(square[-1]) # 3
리스트 슬라이싱
: 리스트[ firstIndex : lastIndex ]
(마지막 인덱스 직전 요소까지 출력함. 원하는 요소까지 출력하려면 --> 원하는 index + 1)
square = [1,2,3,4,5]
print(square[2:])
# [3, 4, 5]
print(square[:2])
# [1, 2]
print(square[1:2])
# [2]
print(square[-3:])
# [3, 4, 5]
리스트 수정
square = [1,2,3,4,5]
square[1] = 5
# [1, 5, 3]
square[2:4] = 6
# [1, 5, 6, 6, 5]
// remove
square[2:4] = []
# [1, 5, 5]
square[:] = []
# []
리스트 복사
a = [1,2,3,4]
1) b=a (js 얕은복사와 비슷)
print(a is b) # True
# a 리스트 항목 변경 --> b도 변경
2) b=a[:] (새로운 리스트를 반환)
print(a is b) # False
# a 리스트 항목 변경 --> b에 영향 x
3) b=a.copy() (복사본 생성)
: 2)의 결과와 동일
리스트에 추가
- + 연산자: 원본(a) 변경 x
- -- 아래부터는 원본 리스트를 변경 --
- extend()
- append(): 새 항목 추가 (배열로 추가하면 배열까지 추가)
- insert(index, data): data를 특정 index에 추가
a = [1,2,3,4,5]
a + [6,7]
# [1,2,3,4,5,6,7]
a.extend([6,7])
# [1,2,3,4,5,6,7]
a.append(6)
# [1,2,3,4,5,6]
a.append([6,7])
# [1,2,3,4,5,[6,7]]
a.insert(특정 index, 12)
# [1,2,12,3,4,5]
리스트 중첩
a=[1,2,3]
b=[2,3,2]
c=[a,b] # [[1,2,3],[2,3,2]]
리스트 삭제
[:], clear(), del, remove(), pop()
data = ['1','2','3','4','5']
data[:]=[]
data.clear()
del data[index]
del data[start:end:step]
del data[0:-1:2]
# ['1','3','5']
data.remove('3')
# 특정항목 제거, 동일한 값이 여러개일 경우 첫번째 값만 제거
data.pop(index)
# 특정 index 항목을 꺼내 리턴하고, 리스트에서 삭제
test = data.pop(0)
# test: ['1'] / data: ['2','3','4','5']
data.pop()
# 리스트의 마지막 요소를 꺼내 리턴하고, 리스트에서 삭제
리스트 정렬
sort()함수는 리스트 요소를 '숫자 -> 영문 대문자 -> 영문 소문자' 순으로 정렬
data=['a', 'ab', 'A', 'a1', '1']
data.sort()
# ['1', 'A', 'a', 'a1', 'ab']
리스트 항목 뒤집기
data=[1,2,3]
data.reverse() # [3,2,1]
리스트 병합 및 반복
+, * 연산자
a=[1,2,3]
b=[4,5,6]
c = a + b
d = a*2 # [1,2,3,1,2,3]
리스트 검색
index(data), count(data) : (몇번째 index인지, 몇 개가 있는지)
a = ['a', 'b', 'c', 'a']
a.index('a') # 0
a.count('a') # 2
리스트 항목 개수
data=[1,2,3]
len(data)
# 3
그 외
- 리스트 내포
- 제너레이터 객체
참고 사이트
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sisosw&logNo=221326583311
'패스트캠퍼스 - 자료구조와 알고리즘 > 파이썬 기초 문법' 카테고리의 다른 글
파이썬 while, break, continue (0) | 2021.07.26 |
---|---|
파이썬 문자열 다루기 (0) | 2021.07.22 |
파이썬 비교&논리 연산자 (0) | 2021.07.21 |
파이썬 이스케이프 코드 (\n 등) (0) | 2021.07.21 |
파이썬 수학 관련 연산자 (0) | 2021.07.21 |