반응형
Notice
Recent Posts
Recent Comments
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

veggie의 기술기록

[Python] 리스트 본문

IT_Python

[Python] 리스트

예지콩먹어콩 2022. 8. 16. 22:54
반응형

 알고리즘 : 문제를 해결하는 데 사용하는 일련의 규칙 또는 단계

 자료 구조 : 컴퓨터에서 자료를 구성하는 특별한 방법

컬렉션 자료형 : 컬렉션 자료형이란 여러 가지 요소를 하나로 묶어 사용하는 데이터 타입이다. 컬렉션은 하나의 변수에 많은 값을 넣을 수 있고 그래서 유용하다.

리스트 : 리스트는 컬렉션의 일종이다. 리스트 상수는 대괄호로 둘러싸여있고 리스트의 원소는 반점으로 구분된다. 리스트는 파이썬의 어떤 객체도 원소로 넣을 수 있다. (심지어 다른 리스트를 넣는 것도 가능하다!) 당연히 빈 리스트도 생성 가능하다. 

1
2
3
4
5
6
7
8
9
10
11
>>> print([12476])
[12476]
>>> print(['red''yellow'
'blue'])
['red''yellow''blue']
>>> print(['red'2498.6])
['red'2498.6]
>>> print([ 1, [56], 7])
[1, [56], 7]
>>> print([])
[]
cs

문자열과 마찬가지로, 대괄호를 이용한 인덱스로 리스트의 원소 하나하나를 가져올 수 있다. ex)friends[1]

또한 리스트는 인덱스 연산자를 사용하여 요소를 변경할 수 있다.

1
2
3
4
5
6
>>> lotto = [214264163]
>>> print(lotto)
[214264163]
>>> lotto[2= 28
>>> print(lotto)
[214284163]
cs

리스트의 길이는 len()함수를 이용해서 측정할 수 있다. len()함수는 아무 시퀀스를 받아도 원소의 개수를 반환한다.

range함수를 이용해 0부터 매개변수로 넣은 값보다 1 작은 범위의 수까지로 구성된 숫자 리스트를 구성할 수 있다.

for문과 정수 반복자를 통해 인덱스 루프를 구성할 수 있다.

1
2
3
4
5
6
>>> print(range(4))
[0123]
>>> friends = ['Joseph''Glenn''Sally']
>>> print(len(friends))
3>>> print(range(len(friends)))
[012]
cs

기존에 존재하는 두 리스트를 더하여 새로운 리스트를 생성할 수도 있다. (+연산자 사용)

슬라이싱을 이용할 수도 있는데, 문자열과 마찬가지로 괄호 안의 두번째 숫자 직전까지만 포함한다! ex)list[1:3]=>1,2번째만 슬라이싱 됨.

 리스트 처음부터 만들기 : 빈 리스트를 만들고 append 메서드를 이용하여 원소를 추가한다. 리스트 안은 순서가 유지되고 새 원소는 리스트 끝에 추가된다.

1
2
3
4
5
6
7
8
>>> stuff = list()
>>> stuff.append('book')
>>> stuff.append(99)
>>> print(stuff)
['book'99]
>>> stuff.append('cookie')
>>> print(stuff)
['book'99'cookie']
cs

리스트 원소 탐색 : in 연산자를 이용해 특정 원소가 리스트에 있는지 확인할 수 있다. 논리값을 반환한다.

리스트에는 순서가 있음 : 원소가 추가된 순번대로 순서를 유지하나 sort()메서드를 이용해 정렬할 수 있다. list.sort()를 하면 오름차순으로, list.sort(reverse=True)를 하면 내림차순으로 정렬할 수 있다.

파이썬에는 리스트를 매개 변수로 받는 내장 함수가 여러가지 있다. ex)sum(), min()

split()함수는 문자열을 작게 나누고 문자열로 구성된 리스트를 생성한다.

1
2
3
4
5
>>> thing = line.split(';')
>>> print(thing)
['first''second''third']
>>> print(len(thing))
3>>> 
cs

 

위 코드는 ;를 구분자로 문자열을 나누는 코드이다. 이렇게 문장을 나눌 때 어떤 구분자를 사용할지 정할 수 있다. 

아무것도 넣지 않는다면 공백으로 여겨진다.

반응형

'IT_Python' 카테고리의 다른 글

[Python] 튜플  (0) 2022.09.17
[Python] 딕셔너리  (0) 2022.09.14
[Python] 파이썬에서 파일 처리하기  (0) 2022.08.16
[Python] 'NoneType' object has no attribute 'append'  (1) 2022.08.16
[Python] 문자열  (0) 2022.08.10
Comments