※ 리스트 list 응용
append, extend, pop, del, remove, index, count, reverse, sort, clear, copy,
컨프리헨션 , min, max, sum
# 리스트 요소 추가 메서드
- 리스트. append(요소)
: 끝에 요소 하나 추가 , 빈 리스트에도 값을 추가할 수 도 있다.
- 리스트. append(리스트)
: 리스트안에 리스트 추가 가능 --> 중첩 리스트
💫 단, 리스트 안에 리스트가 들어갔다고 해서 len가 n이상 증가하는 게 아니라, 1 리스트당 1 증가한다.
- 리스트.extend([리스트])
: 리스트 연결하여 확장
: append를 여러 번 사용 시 번거로우니까 extend사용
== 🙌 리스트를 슬라이스로 요소를 추가할 수 있는 방법이 있다.
a = [10,20,30]
a[len(a):] = [500,600]
a
==> [10,20,30,500,600]
- 리스트.insert(인덱스, 요소) : 특정 인덱스에 요소 추가
# 리스트 요소 삭제 메서드
- 리스트.pop()
: 마지막 요소 삭제
- 리스트.pop(인덱스)
인덱스 지정 시 관련 인덱스 요소 삭제 (빼낸 요소 출력함)
--> 이럴 때 del 사용해도 상관없다. del a[1] 이런 식으로!
-⭐remove(특정값)
: 리스트에서 특정값을 찾아서 삭제
단, 여러 개 일 경우 처음 찾은 값만 삭제
📌 Stack 스택처럼 활용이 가능하다.
# 리스트 특정값의 인덱스 구하기 : 리스트. index(값)
: 여러개 일 경우, 제일 작은 인덱스 값
# 리스트 특정값의 개수 구하기 : 리스트. count(값)
# 리스트 순서 뒤집기 : 리스트. reverse()
# 리스트 정렬 하기 : 리스트. sort(reverse= True or False)
: sorted는 내장 함수로, sorted(리스트) 할 경우 --> 정렬된 새로운 객체 리스트를 생성한다.
# 리스트의 모든 요소 삭제하기 (리스트 비우기) :
리스트.clear() == del 리스트[:]
# 리스트 할당 및 복사
a의 리스트를
b = a라고 대입하면, 같은 리스트를 가리키고 있기 때문에
b의 요소를 변경하면 a의 요소도 변경된다. a is b => True
그리하여 각자의 객체로 생성하고 싶으면
b = a.copy()
라고 해야 한다. a is b => False , a == b => True
# 인덱스와 요소를 함께 출력하기
for index, value in enumerate(리스트):
print(index, value)
⭐ 리스트 표현식 사용하기
'리스트 안에 식, for, if 조건문을 지정하여 리스트를 생성하는 것을 리스트 컴프리헨션'이라고 한다.
>> 뒤에서부터 앞으로 읽으면 간단하다.
# 0부터 9까지 숫자를 생성하여 리스트 생성
a = [i for i in range(10)]
a = list(i for i in range(10)]_
>> 응용 ver. a = [i*2 for i in range(10)] --> [0,2,4,6,8,10,12,14,16,18] 생성
# 0 ~ 9 숫자 중 2의 배수인 숫자로만 리스트 생성
a = [i for i in range(10) if i % 2 == 0] --> [0,2,4,6,8]
# (응용 ver) 2단부터 9단까지 구구단 리스트 생성
a = [ i * j for j in range(2,10) for i in range(1,10)]
# 리스트 요소들을 int형으로 형 변환 하기
: a = list(map(int, a))
⭐⭐ 리스트 요소들 중에서 길이가 5인 요소들만 뽑아서 따로 리스트 출력
a = [리스트 요소들.. ~~]
b = [i for i in a if len(i) == 5]
※ 튜플 tuple 응용
index, count, 컴프리헨션, map, min, max, sum
# 튜플 요소들을 int형으로 형 변환 하기 '가능!!!!!'
: a = tuple(map(int, a))
'PYTHON' 카테고리의 다른 글
ep5. Python module 모음집 (0) | 2022.06.21 |
---|---|
ep.3 : 리스트 / 튜플 / 딕셔너리 & (응용: 추후 추가예정) (0) | 2022.06.20 |
ep.2 : 시퀀스자료형 (0) | 2022.06.07 |
ep.1 : Basic (0) | 2022.06.02 |
[Python] 코드업 기초 100제[2] / 6050 ~6098(끝) (0) | 2022.05.20 |
댓글