PROGRAMMING::LANGUAGE/Python
〔모두를 위한 파이썬〕리스트, split() 으로 원하는 부분 추출하기, 가디언 패턴
해 송
2022. 6. 23. 23:45
반응형


1. 컬렉션(Collection)
- 보통의 변수들은 하나의 값만을 가지므로 새로운 값을 넣으면 기존의 값은 덮어씌워진다
- 하지만 컬렉션은 하나의 변수에 여러 값을 넣을 수 있게 해준다
- 리스트는 컬렉션의 한 종류!




2. 리스트(List)
- 리스트 요소들은 대괄호([]) 로 둘러 쌓여 있고, 각 요소들은 쉼표(,)로 구분
- 리스트 명은 friends, iteration variable 명은 friend 처럼 지으면 사용하기 편하다
- 리스트는 변경 가능(mutable) 하기 때문에 lotto[2] = 28 처럼 값을 변경할 수 있다!
- 반면 문자열(string)은 변경 불가능(immutable)하기 때문에 fruit[0] = 'b' 처럼 값을 변경 시도하면 에러가 발생한다



3. range() 리스트에 활용하기
- len() 함수를 통해 리스트의 요소의 개수를 셀 수 있다
- range() 함수는 0부터 (매개변수 - 1)까지의 리스트를 반환한다


4. 리스트 병합과 슬라이싱
- 문자열과 사용법이 동일하다
- + 를 사용하면 리스트들을 병합할 수 있고, 리스트명[a : b]의 형식으로 원하는 만큼 추출하여 사용 가능하다


5. 리스트 생성과 메서드 사용하기
- list() 함수를 사용하면 빈 리스트를 생성하여 변수에 할당해준다
- 그 다음 리스트명.append(abc) 의 형식으로 원하는 요소를 리스트에 추가할 수 있다
- 리스트명.sort() 을 통해 리스트를 알파벳 순서로 정렬할 수 있다
dir(변수명) 을 통해 해당 타입에서 사용 가능한 메서드를 확인 가능하다
예를 들면, 아래와 같이 사용하면 된다
x = list()
print(dir(x))


6. 빌트인 함수 사용하기
- len(), max(), min(), sum() 에 리스트를 인자로 넘겨 사용할 수 있다
- len() 은 리스트의 길이, max/min() 은 리스트의 최댓값/최솟값, sum() 은 리스트의 모든 요소의 총합을 반환한다
- 오른쪽 사진에서 왼쪽과 오른쪽 코드는 같은 결과를 가져오지만, 오른쪽처럼 리스트를 사용하는 경우 더 많은 메모리를 사용한다는 점에서 차이가 있다


7. split()
(1) split() 이용하여 문자열을 리스트로 바꾸기
- split() 은 기본적으로 문자열 내의 공백을 구분자로 요소들을 나눈 리스트를 반환한다
- 이때, 공백이 아닌 다른 것을 구분자로 사용하고 싶다면 split(';')처럼 인자로 넘겨준다


(2) split() 으로 원하는 부분 추출하기
- 이전에 find() 와 문자열 슬라이싱을 사용해서 원하는 부분을 추출하는 연습을 했었는데, split() 을 사용하면 이와 동일한 결과를 더 쉽게 가져올 수 있다
- 이전과 비교하기:
〔모두를 위한 파이썬〕문자열, 슬라이싱, 라이브러리 함수(find, strip, replace)
1. 문자열 문자열의 각 요소는 인덱스를 가진다 fruit[0] 은 'b', fruit[1] 은 'a' 이런 식으로 값이 지정된다 len() 의 인자로 문자열을 넘겨주면 문자열의 길이를 반환한다 2. 문자열 순회하기 for 문 또
love-every-moment.tistory.com
8. 가디언 패턴
han = open('mbox-short.txt')
for line in han:
line = line.rstrip()
wds = line.split()
# Guardian Pattern
if len(wds) < 3 or wds[0] != 'From' :
continue
print(wds[2])
- 에러가 발생하지 않도록 방지
강의 사이트
모두를 위한 파이썬 (PY4E)
부스트코스 무료 강의
www.boostcourse.org
반응형