#1. 리스트에서 요소를 추출하는 방법
일반적으로 리스트에서 요소를 추출하려면 인덱스 번호를 활용한다. 예를 들어 a_list=['one','two','three','four','five']라는 리스트가 있을 때 a_list[0]과 같이 리스트 명을 쓰고 [ ] 괄호 안에 인덱스 번호를 적어 print(a_list[0])을 실행하면 해당 인덱스 번호에 해당하는 'one'이라는 원소가 출력이 된다. 참고로 파이썬에서 리스트의 인덱스 번호는 0부터 시작한다.
슬라이싱이라는 기법으로 몇번째부터 몇번째까지의 원소를 출력할 수도 있다. a_list[0:2]와 같이 인덱스 번호 대신 "0 콜론 2"를 [ ] 괄호 안에 입력할 경우, 0번째부터 2번째 전까지의 원소들을 출력해 준다. 즉 'one', 'two'가 출력이 된다.
#2. 리스트에서 홀수번째 혹은 짝수번째 요소만 추출하는 방법은 없을까?
그렇다면, 홀수번째 혹은 짝수번째 요소만 추출하는 방법은 없을까? 매번 순서대로만 요소를 추출하지 않기 때문이다. 이런 경우에는 슬라이싱을 할 때 [시작 인덱스값 :: 인덱스 간격값]을 설정해서 리스트를 슬라이싱하는 방법을 사용하면 된다.
아래와 같이 a_list[0::2]의 의미는 a_list의 0번째 인덱스부터 2의 간격의 인덱스들의 요소들을 추출하라는 의미이다. 즉, 이 방법을 통해 0, 2, 4 ... 인덱스들의 요소들을 출력할 수 있다.
이에 따라 리스트의 홀수번째 요소를 추출하고 싶은 경우, 리스트[1::2]를 하면 되고, 짝수번째 요소를 추출하고 싶은 경우, 리스트[0::2]를 하면 되는 것이다.
이를 응용해서 0번째 원소로부터 3의 간격으로 원소를 추출하고 싶은 경우, 4의 간격으로 원소를 추출하고 싶은 경우 각각 리스트[0::3], [0::4]를 하면 된다. 몇번째 원소부터 시작할 것인지, 몇의 간격으로 원소를 추출할 것인지 값을 정해서 넣기만 하면 리스트에서 원소를 추출할 때 다양하게 활용할 수 있다.
#3. 숫자 원소인 경우, 처음부터 홀수 리스트 혹은 짝수 리스트를 만들 수 있다.
숫자 원소인 경우라면 처음부터 홀수 리스트, 짝수 리스트를 만드는 방법도 있다. list와 range 함수를 사용하면 간단하게 리스트를 만들 수 있다. list(range(처음시작할 원소값, 끝날 원소값+1, 원소들 사이의 간격값))으로 정의할 수 있다. 아래 코드를 보면 좀 더 쉽게 이해할 수 있다.
0부터 9까지 원소를 구하는데 그 간격을 1로 하는 경우 list(range(0,10,1))로 코드를 작성하면 되고, 위와 같이 출력 결과를 확인할 수 있다. 여기서 주의할 점은 파라미터를 입력할 때 원하는 원소의 끝값 더하기 1을 해주어야 한다는 점이다. 따라서 입력하는 파라미터가 9가 아닌 10이 입력되어야 0~9까지 원소가 들어간 리스트를 만들 수가 있다.
그 밖에 원소 간격을 2, 3, 4 등 여러가지 값을 넣어서 다양한 간격의 리스트를 만드는데 활용할 수 있다.
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
'Python notes > Others' 카테고리의 다른 글
파이썬) 파이썬 공부를 다시 시작했다 ! (+무료 강의 추천) (0) | 2021.03.20 |
---|---|
파이썬) 청년 AI·Big Data 아카데미 온라인 기초과정 (MOOC) 수강 신청 (0) | 2021.03.11 |
파이썬 크롤러) 크롤링(스크랩핑) 중간에 pause, 쉬는 시간을 두려면? (time.sleep 사용) (0) | 2019.01.04 |
파이썬 크롤러) 파이썬, 리스트 안의 리스트를 풀어서 하나의 리스트로 만들기 (이중 리스트 일자화) (0) | 2019.01.04 |
파이썬 크롤러) pandas로 데이터를 엑셀로 저장할 때 추가 데이터를 이어 업데이트하기 ! (0) | 2018.12.20 |
댓글