list 멤버 함수
- 생성된 리스트 객체에 동작하는 함수
- 향후, 클래스와 멤버 함수 개념을 이해할 예정
- append()
- 리스트의 끝에 항목을 추가함
a = [1, 2, 3, 4, 5]
a.append(10) #맨끝에 추가됨
print(a)
결과:
[1, 2, 3, 4, 5, 10]
a = [1, 2, 3, 4, 5]
b = [6, 7, 8, 9, 10]
# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
a.append(b)#b자체가 리스트로 a에 추가된
print(a)
print(a[5])
결과:
[1, 2, 3, 4, 5, [6, 7, 8, 9, 10]]
[6, 7, 8, 9, 10]
- extend()
- 리스트를 연장
- += 로도 가능함. +리스트 형식
#리스트를 연산하고 싶다면
#append 말고 extend
a = [1, 2, 3, 4, 5]
b = [6, 7, 8, 9, 10]
a.extend(b)
print(a)
결과:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
* +로 연산
#다른방법으로
a = [1, 2, 3, 4, 5]
b = [6, 7, 8, 9, 10]
a += b
print('+로 연산', a)
결과:
+로 연산 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- insert()로 항목추가
- 리스트의 원하는 위치에 추가 가능 (append는 끝에만 추가가 가능했는데)
- 앞에 인덱스를, 뒤에 값을 명시
- a.insert(인덱스, 값)
a = [1, 3, 4, 5, 6]
a.insert(1, 40) #1번 인덱스자리에 40값 추가
print(a)
결과:
[1, 40, 3, 4, 5, 6]
- remove()
- 값으로 항목 삭제
a = [1, 2, 30, 30, 4, 5]
a.remove(30) #30값을 지운다
print(a) #중복되어있을때는 가장 앞에꺼 하나만 지운다
결과:
[1, 2, 30, 4, 5]
- pop()
- 지우고자 하는 아이템을 반환 후, 삭제
- remove는 값으로 지우지만, pop은 인덱스로 지움
a = [1, 2, 3, 4, 5]
#d1=a.pop()
d=a.pop(2) #인덱스를 쓰지않으면 끝에 값이 지워짐
print(a)
b = [1, 2, 3, 4, 5]
c=b.pop(2) #값을 지우면서 그 지운값을 반환도 가능
print(c)
print(b)
#지워진 값이 필요하다면 변수를 통해 담을수있음
결과:
[1, 2, 4, 5]
3
[1, 2, 4, 5]
- index()
- 찾고자 하는 값의 인덱스 반환
a = [2, 6, 7, 9, 10]
a.index(9) #9의 인덱스는 3번 자리인덱스
결과:
3
* 참고! a. '+tab'을 누르면 list에서 쓸 수 있는 함수들이 다 나옴
- in 키워드
- 리스트 내에 해당 값이 존재하는지 확인
- value in [list]
- True, False 중 한가지로 반환
a = [1, 2, 3, 4, 5, 10]
b = 7
c = b in a # a안에 b가 있냐없냐. 없죠. False
d=10
e=d in a #있죠
print(c)
print(e)
결과:
False
True
- list 정렬
- sort() -> 리스트 자체를 내부적으로 정렬
- sorted() -> 리스트의 정렬된 복사본을 반환
a = [9, 10, 7, 19, 1, 2, 20, 21, 7, 8]
a.sort(reverse=True) #내림차순. ()비워두면 오름차순
b = sorted(a) #내림차순하려면 b= sorted(a, reverse=True)
print(a) #a자체가 변경
print(b) #a는 그대로 있고 정렬된걸 새로운 b에 담기
결과:
[21, 20, 19, 10, 9, 8, 7, 7, 2, 1]
[1, 2, 7, 7, 8, 9, 10, 19, 20, 21]
'IT_Python' 카테고리의 다른 글
[파이썬기초] 딕셔너리 dictionary. 추가/변경/병합/삭제/확인/조회/튜플 변경. update/del/pop/clear/in/get/items (0) | 2021.12.11 |
---|---|
[파이썬기초] 튜플 (tuple). 정의/튜플 언패킹 tuple unpacking (0) | 2021.12.10 |
[파이썬기초] 리스트 ( list ) (1). 리스트 변경/문자열 split/인덱싱/슬라이싱/값 변경 하기 (0) | 2021.12.08 |
[파이썬기초] 문자열 함수(replace, format, split) (0) | 2021.12.07 |
[파이썬기초] 인덱스와 슬라이싱 (0) | 2021.12.06 |