파이썬 기본 (3) list

    목차
반응형

code1

a = [1,2,3]
b = [4,5,6]
c = a + b
print(c)
print(c[1])
print(c[-1])
print(c[2:5])
print(len(c))

output1

[1, 2, 3, 4, 5, 6]
2
6
[3, 4, 5]
6

 

복습포인트1. list는 대괄호 [] 안에 , 로 구분된 element들의 모임이다.

두 list a와 b를 더한 c는각 element끼리의 합인 [5, 7, 9]가 아닌 [1, 2, 3, 4, 5, 6]이 된다.

 

python에서는 첫 element를 0으로 취급하여 print(c[1])를 하면 첫번째 element인 1이 아닌 두번째 element인 2가 출력이 된다.

이는 string에도 똑같이 적용되어 s = 'Hello World!'라고 했을 때 s[0]은 'H'이다.

음수를 넣으면 뒤에서부터 세어 해당하는 element가 된다.

그러므로 c[-1]은 뒤에서 첫번째 element인 6이 된다.

 

c[2:5]는 c[2]부터 c[5] 전까지 element를 모아 만든 새로운 list를 뜻한다.

주의할 점은 c[5]는 포함이 되지 않는다는 것이다.

 

len(c)은 list의 원소의 갯수를 뜻한다. list의 길이(length)라고도 한다.

 

 

 

code2

d = list(range(4))
print(d)

d.append(5)
print(d)

d.pop()
print(d)

e = [1, 2, 1, 3, 1, 4]
e.remove(1)
print(e)
del e[3]
print(e)

e.reverse()
print(e)
e.sort()
print(e)
e.sort(reverse=True)
print(e)

output2

[0, 1, 2, 3]
[0, 1, 2, 3, 5]
[0, 1, 2, 3]
[2, 1, 3, 1, 4]
[2, 1, 3, 4]
[4, 3, 1, 2]
[1, 2, 3, 4]
[4, 3, 2, 1]

복습포인트2. range(n)는 0부터 시작하여 n개의 숫자를 만드는 함수로 보통 for 반복문이나 list를 생성할 때 주로 사용한다.

* range 그 자체는 list가 되지 않으므로 주의

그렇기에 d는 0부터 4개의 숫자인 [0, 1, 2, 3]이 된다.

 

복습포인트3. list에는 다양한 함수가 존재하는데 새로운 element를 추가하거나 없애는 것으로 append, pop, remove, del 등이 있다.

append는 list의 끝에 새로운 element를 추가하는 것, pop은 가장 뒤의 element를 없애는 것,

remove는 원하는 element를 없애는 것(단, 중복되는 element는 앞에서부터 지워진다)이다.

del은 원하는 위치의 element를 없애는 것이다.

 

순서를 바꾸는 것으로 reverse, sort 등이 있다.

e.reverse()를 하면 역으로 element들이 정리되고

e.sort()를 하면 오름차순이 디폴트값으로 되어 오름차순으로 element들이 정리되며

e.sort(reverse=True)로 하면 내림차순으로 정리된다.

 

 

더 자세한 것을 알고 싶으면 shell에 help(list)를 쳐보면 된다.

728x90
반응형