Search
Duplicate

Lists

태그
배열
구문
[배열명] = [요소]
파이썬에서는 다양한 데이터 타입을 한 배열에 담을 수 있다.
Empty Lists
[배열명] = []
List Methods
(1) 리스트에 요소를 추가하는 메서드 : [배열명].append(추가할 요소)
(2) 리스트의 특정 요소를 제거하는 메서드 : [배열명].remove(추가할 요소)
+
리스트에 요소를 한개 혹은 여러개를 추가하고 싶다면, 혹은 리스트와 리스트를 더하고 싶다면 + 를 사용한다.
[배열명] = [배열1] + [요소1, 요소2]
[배열명] + [요소]
Accessing List Elements
특정 인덱스의 값을 선택하고 싶다면 [배열명][index number] 을 사용하면 된다. 이때 인덱스 번호는 정수여야 하는데, 만약 index number 의 값이 float 형 일 경우, int 형으로 형변환 시켜주면 된다. 이때는 [배열명][int(float 형 수)] 구문을 사용하자.
index number 가 음수인 경우, 끝에서부터 차례대로 가면 된다. 이때 맨 끝 요소의 index number 는 -1 이다.
Modifying List Elements
특정 인덱스의 값을 바꾸고 싶다면 재지정을 해주면 된다.
Shringking a List: Remove
.remove() 메서드를 이용하여 특정 요소를 지울 수 있다. (값은 한개만 넣어야 한다. 두개 넣었더니 에러났었음,,)
Two-Dimensional(2D) Lists
구문
[배열명] = [[요소1,요소2 . . .],[요소1,요소2 . . .]. . .]
특정 요소의 값을 얻고싶다면,
[변수명] = [배열명][index number1][index number2]
특정 인덱스의 값을 수정하고 싶다면 재지정을 해주면 된다.
List Methods
(1) .count() : 배열안에 있는 특정 요소의 개수를 나타낸다.
(2) .insert() : 배열의 특정 인덱스에 요소를 넣는다.
.insert(index number, [요소])
index number 로 음수를 사용할 때, 넣은 수보다 한칸 더 가서 넣어진다.
예를들어 다음과 같은 배열이 있다고 가정하자.
olympic_sports = ["Hockey", "Swimming", "Fencing", "Volleyball"]
만약 중간에 값을 넣고 싶다면, 다음과 같이 코드를 작성해야한다.
olympic_sports.insert(-2, "Breakdancing")
[결과] olympic_sports = ["Hockey", "Swimming", "Breakdancing", "Fencing", "Volleyball"]
(3) .pop() : 특정 인덱스의 요소를 제거한 후 그 요소를 반환한다.
괄호안에 아무런 숫자도 넣지 않은 경우, 맨 마지막 요소가 제거된다.
(4) .range() : 연속된 정수를 만들어준다.
list 형태로 print 하고 싶다면 print(list(배열명)) 과 같이 쓴다.
.range(number1, number2, number3)
number1 : 시작하는 숫자
number2 : 끝나는 숫자 (만약 9라면 마지막 수는 8이다.)
number3 : number1 과 다음 숫자의 차이
(5) .len() : 배열의 길이를 알려준다.
특정 변수에 배열의 길이를 저장하고 싶을때 : [변수명] = len([배열명])
(6) .sort()/sorted() : 배열을 정렬해준다.
.sort(reverse=True) 는 내림차순 정렬
굳이 특정 변수안에 저장하지 않아도 된다.
특정변수에 저장하는 경우, 다음과 같이 사용 가능하다.
[변수명] = sorted([배열명])
[변수명] = [배열명].sort()
sorted() 함수의 경우 original 배열을 바꾸지 않고 정렬된 새로운 배열을 생성한다.
(7) .index() : 특정값의 인덱스 번호를 반환한다.
Slicing Lists
배열의 일부분을 추출하고 싶다면 다음과 같은 구문을 사용한다.
배열의 일부 추출
[배열명][start index : end index]
이때 end index 는 내가 추출하려는 끝의 index number 보다 1 커야한다.
0 부터 n-1 까지 추출
[배열명][:n]
맨 마지막 요소부터 n 개 추출
[배열명][-n:]
맨 앞 요소부터 n 개 추출
[배열명][:-n]
Zip()
zip() 함수는 두개 이상의 배열을 객체로 반환한다. 아래의 예제를 보자.
[예시 코드]
names = ["Jenny", "Alexus", "Sam", "Grace"] heights = [61, 70, 67, 64] names_and_heights = zip(names, heights) print(names_and_heights)
Python
복사
[결과값]
<zip object at 0x7f1631e86b48>
zip 객체는 컴퓨터 메모리상의 위치를 포함한다. 이를 다시 list로 변환 가능하다.
[예시 코드]
converted_list = list(names_and_heights) print(converted_list)
Python
복사
[결과값]
[('Jenny', 61), ('Alexus', 70), ('Sam', 67), ('Grace', 64)]
배열이지만 tuples(an immutable type of list) 로 바꼈기 때문에 inner list 가 [] 로 묶이지 않았다.
각 리스트가 같은 index number 끼리 쌍으로 묶인것을 알 수 있다.