[python]기초문법4
리스트(list)
순서가 있는 목록, 대괄호[]로 요소(element)를 감싼다.
순서가 있기때문에 데이터가 중복될 수 있다.
자료형에 관계 없이 넣을 수 있고, 리스트안에 리스트를 중첩으로 넣을 수 도 있다.
s = ['a','b',1,2,3,True]
s[0] //'a'
리스트에 사용할 수 있는 연산자
- , * , in , not in
[1,2,3]+[1,2,3]
=>[1,2,3,1,2,3]
3
* [1,2,3]
=> [1,2,3,1,2,3,1,2,3]
1 in [1,2,3]
=>True
100 in [1,2,3]
=>False
100 not in [1,2,3]
=>True
리스트의 요소 추가함수
append(object) : list의 끝에 요소를 삽입
a = [1,2,3]
a.append(4)
=>[1,2,3,4]
insert(index,object) : 원하는 index에 요소를 삽입
a.insert(1,1)
=>[1,1,2,3,4]
extend(iterable) : iterable 요소를 삽입하여 list를 확장
a.extend([5,6,7])
=>[1,1,2,3,4,5,6,7]
비파괴적 함수와 파괴적 함수
비파괴적 함수
: 함수가 실행했을때만 결과가 바뀌고, 이후에는 원본 데이터를 파괴하지않고 그대로 유지함
a = 'hello'
a.upper() // 'HELLO'
a // 'hello'
b = a.upper()
b//'HELLO'
파괴적 함수
: 함수 실행 이후에는 원본 데이터가 파괴되어 다른 데이터가 됨.
a = [1,2,3]
a //[1,2,3]
a.append(4)
a//[1,2,3,4]
비파괴적 함수를 사용하면 개발 중 실수를 줄일 수 있고, 컴퓨터 성능에도 부담을 줄일 수 있다.
대부분의 라이브러리는 비파괴적인 함수를 사용한다.
리스트의 요소 제거
인덱스로 제거하는 방법과 값으로 제거하는 방법이 있음
인덱스로 제거
del 연산자
a = [1,2,3,4,5]
del a[1]
a // [2,3,4,5,]
del a[0:2]
a //[4,5]
prp() 함수
a = [1,2,3,4,5,6,7]
a.pop(1) //2
a //[1,3,4,5,6,7]
매개변수 없이 .pop()을 하면 자동으로 맨 끝 데이터가 지워짐
값으로 제거
remove()
a = [100,200,300]
a.remove(100)
a // [200,300]
remove() 는 값을 하나만 지울 수 있다. 중복되는 요소가 있어도 하나만 지운다.
a = [1,1,1,1]
a.remove(1)
a //[1,1,1]
list내의 모든 요소를 제거하는 함수
clear()
Leave a comment