파이썬 인덱스 | 1분 파이썬 – (10) 인덱스와 슬라이싱 최근 답변 252개

당신은 주제를 찾고 있습니까 “파이썬 인덱스 – 1분 파이썬 – (10) 인덱스와 슬라이싱“? 다음 카테고리의 웹사이트 https://you.maxfit.vn 에서 귀하의 모든 질문에 답변해 드립니다: https://you.maxfit.vn/blog/. 바로 아래에서 답을 찾을 수 있습니다. 작성자 나도코딩 이(가) 작성한 기사에는 조회수 10,054회 및 좋아요 158개 개의 좋아요가 있습니다.

파이썬 인덱스 주제에 대한 동영상 보기

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

d여기에서 1분 파이썬 – (10) 인덱스와 슬라이싱 – 파이썬 인덱스 주제에 대한 세부정보를 참조하세요

2022학년도 코딩능력시험 문제를 출제합니다.
하루 1분만 투자해서 가볍게 파이썬을 배우고,
시험 문제를 통해 배운 내용을 복습하세요 ^^

Designed by freepik, flaticon
: https://www.freepik.com
: https://www.flaticon.com

파이썬 인덱스 주제에 대한 자세한 내용은 여기를 참조하세요.

02-3 리스트 자료형 – 점프 투 파이썬

index(x) 함수는 리스트에 x 값이 있으면 x의 위치 값을 돌려준다. … 위 예에서 리스트 a에 있는 숫자 3의 위치는 a[2]이므로 2를 돌려주고, 숫자 …

+ 여기에 보기

Source: wikidocs.net

Date Published: 11/10/2021

View: 6364

파이썬 (Python) 기초_리스트(list) 다루기, index사용, 유용한 …

파이썬 (Python) 기초_리스트(list) 다루기, index사용, 유용한 함수 모음 … 리스트 내의 각각의 데이터에는 순서가 있으며, 이를 인덱스(index) …

+ 여기에 자세히 보기

Source: beaholic.tistory.com

Date Published: 7/21/2022

View: 2512

[파이썬기초] 리스트 요소의 인덱스를 확인

[파이썬기초]. 리스트 요소의 인덱스를 확인. 리스트 요소의 위치를 확인하는 방법입니다. index 메소드를 사용합니다. 요소를 입력하면 index를 반환 …

+ 여기에 보기

Source: pybasall.tistory.com

Date Published: 11/1/2022

View: 5131

[파이썬(Python)] list.index() 란? (numpy.where() 포함)

리스트 매소드 중에서 index()는 리스트 중에서 특정한 원소가 몇 번째에 처음으로 등장했는지를 알려주는데, 인덱스를 알려주기 때문에 index 라는 …

+ 여기에 더 보기

Source: m.blog.naver.com

Date Published: 12/12/2022

View: 5724

파이썬 인덱스(index) – 모두의향연

파이썬 인덱스(index) · 1. 인덱스란. 시퀀스 객체의 각 요소는 순서가 정해져 있으며, 이 순서를 인덱스라고 함. >>> a=[12,45,63,2] · 2. 음수 인덱스 …

+ 더 읽기

Source: feastforall.tistory.com

Date Published: 4/29/2022

View: 7195

[Python 3.7] 파이썬 인덱스와 슬라이스 (1) – Nirsa

시퀀스 객체의 인덱스(index). 1) 양수 인덱스 지정. 시퀀스 객체의 각 요소에는 순서가 있는데, 이 순서를 인덱스라고 부르며 우선 리스트를 생성한 …

+ 여기에 표시

Source: nirsa.tistory.com

Date Published: 10/7/2022

View: 8367

[Python] index 함수 – 배열에서 원하는 값의 위치 찾기

[Python] index 함수 – 배열에서 원하는 값의 위치 찾기. 파이돌이 2019. 10. 16. 19:26. index 함수는 배열에서 값의 위치를 찾아주는 함수리며, 중복된 값이 있으면 …

+ 여기에 표시

Source: pydole.tistory.com

Date Published: 12/9/2022

View: 3619

4.5 데이터프레임 인덱스 조작

이 때는 set_index 명령이나 reset_index 명령으로 인덱스와 일반 데이터 열을 교환할 수 있다. set_index : 기존의 행 인덱스를 제거하고 데이터 열 중 하나를 인덱스로 …

+ 여기를 클릭

Source: datascienceschool.net

Date Published: 5/15/2022

View: 8804

주제와 관련된 이미지 파이썬 인덱스

주제와 관련된 더 많은 사진을 참조하십시오 1분 파이썬 – (10) 인덱스와 슬라이싱. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

1분 파이썬 - (10) 인덱스와 슬라이싱
1분 파이썬 – (10) 인덱스와 슬라이싱

주제에 대한 기사 평가 파이썬 인덱스

  • Author: 나도코딩
  • Views: 조회수 10,054회
  • Likes: 좋아요 158개
  • Date Published: 2022. 4. 22.
  • Video Url link: https://www.youtube.com/watch?v=LC5gZ9O7-YU

02-3 리스트 자료형

지금까지 우리는 숫자와 문자열에 대해서 알아보았다. 하지만 숫자와 문자열만으로 프로그래밍을 하기엔 부족한 점이 많다. 예를 들어 1부터 10까지의 숫자 중 홀수 모음인 1, 3, 5, 7, 9의 집합을 생각해 보자. 이런 숫자 모음을 숫자나 문자열로 표현하기는 쉽지 않다. 파이썬에는 이러한 불편함을 해소할 수 있는 자료형이 존재한다. 그것이 바로 여기에서 공부할 리스트(List)이다.

리스트는 어떻게 만들고 사용할까?

리스트를 사용하면 1, 3, 5, 7, 9 숫자 모음을 다음과 같이 간단하게 표현할 수 있다.

>>> odd = [1, 3, 5, 7, 9]

리스트를 만들 때는 위에서 보는 것과 같이 대괄호([ ])로 감싸 주고 각 요솟값은 쉼표(,)로 구분해 준다.

리스트명 = [요소1, 요소2, 요소3, …]

여러 가지 리스트의 생김새를 살펴보면 다음과 같다.

>>> a = [] >>> b = [1, 2, 3] >>> c = [‘Life’, ‘is’, ‘too’, ‘short’] >>> d = [1, 2, ‘Life’, ‘is’] >>> e = [1, 2, [‘Life’, ‘is’]]

리스트는 a처럼 아무것도 포함하지 않아 비어 있는 리스트([ ])일 수도 있고 b처럼 숫자를 요솟값으로 가질 수도 있고 c처럼 문자열을 요솟값으로 가질 수도 있다. 또한 d처럼 숫자와 문자열을 함께 요솟값으로 가질 수도 있으며 e처럼 리스트 자체를 요솟값으로 가질 수도 있다. 즉 리스트 안에는 어떠한 자료형도 포함시킬 수 있다.

※ 비어 있는 리스트는 a = list()로 생성할 수도 있다.

리스트의 인덱싱과 슬라이싱

리스트도 문자열처럼 인덱싱과 슬라이싱이 가능하다. 백문이 불여일견. 말로 설명하는 것보다 직접 예를 실행해 보면서 리스트의 기본 구조를 이해하는 것이 쉽다. 대화형 인터프리터로 따라 하며 확실하게 이해하자.

리스트의 인덱싱

리스트 역시 문자열처럼 인덱싱을 적용할 수 있다. 먼저 a 변수에 [1, 2, 3] 값을 설정한다.

>>> a = [1, 2, 3] >>> a [1, 2, 3]

a[0]은 리스트 a의 첫 번째 요솟값을 말한다.

>>> a[0] 1

다음 예는 리스트의 첫 번째 요소인 a[0]과 세 번째 요소인 a[2]의 값을 더한 것이다.

>>> a[0] + a[2] 4

이것은 1 + 3으로 해석되어 값 4를 출력한다.

문자열을 공부할 때 이미 살펴보았지만 파이썬은 숫자를 0부터 세기 때문에 a[1]이 리스트 a의 첫 번째 요소가 아니라 a[0]이 리스트 a의 첫 번째 요소임을 명심하자. a[-1]은 문자열에서와 마찬가지로 리스트 a의 마지막 요솟값을 말한다.

>>> a[-1] 3

이번에는 다음 예처럼 리스트 a를 숫자 1, 2, 3과 또 다른 리스트인 [‘a’, ‘b’, ‘c’]를 포함하도록 만들어 보자.

>>> a = [1, 2, 3, [‘a’, ‘b’, ‘c’]]

다음 예를 따라 해 보자.

>>> a[0] 1 >>> a[-1] [‘a’, ‘b’, ‘c’] >>> a[3] [‘a’, ‘b’, ‘c’]

예상한 대로 a[-1]은 마지막 요솟값 [‘a’, ‘b’, ‘c’]를 나타낸다. a[3]은 리스트 a의 네 번째 요소를 나타내기 때문에 마지막 요소를 나타내는 a[-1]과 동일한 결괏값을 보여 준다.

그렇다면 여기에서 리스트 a에 포함된 [‘a’, ‘b’, ‘c’] 리스트에서 ‘a’ 값을 인덱싱을 사용해 끄집어낼 수 있는 방법은 없을까? 다음 예를 보자.

>>> a[-1][0] ‘a’

위와 같이 하면 ‘a’를 끄집어낼 수 있다. a[-1]이 [‘a’, ‘b’, ‘c’] 리스트라는 것은 이미 말했다. 바로 이 리스트에서 첫 번째 요소를 불러오기 위해 [0]을 붙여 준 것이다.

다음 예도 마찬가지 경우이므로 어렵지 않게 이해될 것이다.

>>> a[-1][1] ‘b’ >>> a[-1][2] ‘c’

점프 투 파이썬 [삼중 리스트에서 인덱싱하기] 조금 복잡하지만 다음 예를 따라 해 보자. >>> a = [1, 2, [‘a’, ‘b’, [‘Life’, ‘is’]]] 리스트 a 안에 [‘a’, ‘b’, [‘Life’, ‘is’]] 리스트가 포함되어 있고, 그 리스트 안에 다시 [‘Life’, ‘is’] 리스트가 포함되어 있다. 삼중 구조의 리스트이다. 이 경우 ‘Life’ 문자열만 끄집어내려면 다음과 같이 해야 한다. >>> a[2][2][0] ‘Life’ 위 예는 리스트 a의 세 번째 요소인 리스트 [‘a’, ‘b’, [‘Life’, ‘is’]]에서 세 번째 요소인 리스트 [‘Life’, ‘is’]의 첫 번째 요소를 나타낸다. 이렇듯 리스트를 삼중으로 중첩해서 쓰면 혼란스럽기 때문에 자주 사용하지는 않지만 알아두는 것이 좋다.

리스트의 슬라이싱

문자열과 마찬가지로 리스트에서도 슬라이싱 기법을 적용할 수 있다. 슬라이싱은 ‘나눈다’는 뜻이라고 했다.

자, 그럼 리스트의 슬라이싱에 대해서 살펴보자.

>>> a = [1, 2, 3, 4, 5] >>> a[0:2] [1, 2]

앞의 예를 문자열에서 슬라이싱했던 것과 비교해 보자.

>>> a = “12345” >>> a[0:2] ’12’

2가지가 완전히 동일하게 사용되었음을 눈치챘을 것이다. 문자열에서 했던 것과 사용법이 완전히 동일하다.

몇 가지 예를 더 들어 보자.

>>> a = [1, 2, 3, 4, 5] >>> b = a[:2] >>> c = a[2:] >>> b [1, 2] >>> c [3, 4, 5]

b 변수는 리스트 a의 첫 번째 요소부터 두 번째 요소인 a[1]까지 나타내는 리스트이다. 물론 a[2] 값인 3은 포함되지 않는다. c라는 변수는 리스트 a의 세 번째 요소부터 끝까지 나타내는 리스트이다.

점프 투 파이썬 [중첩된 리스트에서 슬라이싱하기] 리스트가 포함된 중첩 리스트 역시 슬라이싱 방법은 똑같이 적용된다. >>> a = [1, 2, 3, [‘a’, ‘b’, ‘c’], 4, 5] >>> a[2:5] [3, [‘a’, ‘b’, ‘c’], 4] >>> a[3][:2] [‘a’, ‘b’] 위 예에서 a[3]은 [‘a’, ‘b’, ‘c’]를 나타낸다. 따라서 a[3][:2]는 [‘a’, ‘b’, ‘c’]의 첫 번째 요소부터 세 번째 요소 직전까지의 값, 즉 [‘a’, ‘b’]를 나타내는 리스트가 된다.

리스트 연산하기

리스트 역시 + 기호를 사용해서 더할 수 있고 * 기호를 사용해서 반복할 수 있다. 문자열과 마찬가지로 리스트에서도 되는지 직접 확인해 보자.

리스트 더하기(+)

>>> a = [1, 2, 3] >>> b = [4, 5, 6] >>> a + b [1, 2, 3, 4, 5, 6]

리스트 사이에서 + 기호는 2개의 리스트를 합치는 기능을 한다. 문자열에서 “abc” + “def” = “abcdef” 가 되는 것과 같은 이치이다.

리스트 반복하기( * )

>>> a = [1, 2, 3] >>> a * 3 [1, 2, 3, 1, 2, 3, 1, 2, 3]

위에서 볼 수 있듯이 [1, 2, 3] 리스트가 세 번 반복되어 새로운 리스트를 만들어낸다. 문자열에서 “abc” * 3 = “abcabcabc” 가 되는 것과 같은 이치이다.

리스트 길이구하기

리스트 길이를 구하기 위해서는 다음처럼 len 함수를 사용해야 한다.

>>> a = [1, 2, 3] >>> len(a) 3

len 함수는 문자열, 리스트 외에 앞으로 배울 튜플과 딕셔너리에도 사용할 수 있는 함수이다. 실습에서 자주 사용하니 잘 기억해 두자.

점프 투 파이썬 [초보자가 범하기 쉬운 리스트 연산 오류] 다음 소스 코드를 입력했을 때 결괏값은 어떻게 나올까? >>> a = [1, 2, 3] >>> a[2] + “hi” a[2]의 값인 3과 문자열 hi가 더해져서 3hi가 출력될 것이라고 생각할 수 있다. 하지만 다음 결과를 보자. 형 오류(TypeError)가 발생했다. 오류의 원인은 무엇일까? Traceback (most recent call last): File ““, line 1, in TypeError: unsupported operand type(s) for +: ‘int’ and ‘str’ a[2]에 저장된 값은 3이라는 정수인데 “hi”는 문자열이다. 정수와 문자열은 당연히 서로 더할 수 없기 때문에 형 오류가 발생한 것이다. 만약 숫자와 문자열을 더해서 ‘3hi’처럼 만들고 싶다면 숫자 3을 문자 ‘3’으로 바꾸어 주어야 한다. 다음과 같이 할 수 있다. >>>str(a[2]) + “hi” str 함수는 정수나 실수를 문자열의 형태로 바꾸어 주는 파이썬의 내장 함수이다.

리스트의 수정과 삭제

리스트는 값을 수정하거나 삭제할 수 있다.

리스트에서 값 수정하기

>>> a = [1, 2, 3] >>> a[2] = 4 >>> a [1, 2, 4]

a[2]의 요솟값 3이 4로 바뀌었다.

del 함수 사용해 리스트 요소 삭제하기

>>> a = [1, 2, 3] >>> del a[1] >>> a [1, 3]

del a[x]는 x번째 요솟값을 삭제한다. 여기에서는 a 리스트에서 a[1]을 삭제하는 방법을 보여준다. del 함수는 파이썬이 자체적으로 가지고 있는 삭제 함수이며 다음과 같이 사용한다.

del 객체

※ 객체란 파이썬에서 사용되는 모든 자료형을 말한다.

다음처럼 슬라이싱 기법을 사용하여 리스트의 요소 여러 개를 한꺼번에 삭제할 수도 있다.

>>> a = [1, 2, 3, 4, 5] >>> del a[2:] >>> a [1, 2]

a[2:]에 해당하는 리스트의 요소들이 삭제되었다.

리스트의 요소를 삭제하는 방법에는 2가지가 더 있다. 그것은 리스트의 remove와 pop 함수를 사용하는 방법인데 이것에 대해서는 바로 이어지는 리스트 관련 함수에서 설명한다.

리스트 관련 함수들

문자열과 마찬가지로 리스트 변수 이름 뒤에 ‘.’를 붙여서 여러 가지 리스트 관련 함수를 사용할 수 있다. 유용하게 사용되는 리스트 관련 함수 몇 가지에 대해서만 알아보기로 하자.

리스트에 요소 추가(append)

append를 사전에서 검색해 보면 “덧붙이다, 첨부하다”라는 뜻이 있다. 이 뜻을 안다면 다음 예가 바로 이해될 것이다. append(x)는 리스트의 맨 마지막에 x를 추가하는 함수이다.

>>> a = [1, 2, 3] >>> a.append(4) >>> a [1, 2, 3, 4]

리스트 안에는 어떤 자료형도 추가할 수 있다.

다음 예는 리스트에 다시 리스트를 추가한 결과이다.

>>> a.append([5,6]) >>> a [1, 2, 3, 4, [5, 6]]

리스트 정렬(sort)

sort 함수는 리스트의 요소를 순서대로 정렬해 준다.

>>> a = [1, 4, 3, 2] >>> a.sort() >>> a [1, 2, 3, 4]

문자 역시 알파벳 순서로 정렬할 수 있다.

>>> a = [‘a’, ‘c’, ‘b’] >>> a.sort() >>> a [‘a’, ‘b’, ‘c’]

리스트 뒤집기(reverse)

reverse 함수는 리스트를 역순으로 뒤집어 준다. 이때 리스트 요소들을 순서대로 정렬한 다음 다시 역순으로 정렬하는 것이 아니라 그저 현재의 리스트를 그대로 거꾸로 뒤집는다.

>>> a = [‘a’, ‘c’, ‘b’] >>> a.reverse() >>> a [‘b’, ‘c’, ‘a’]

위치 반환(index)

index(x) 함수는 리스트에 x 값이 있으면 x의 위치 값을 돌려준다.

>>> a = [1,2,3] >>> a.index(3) 2 >>> a.index(1) 0

위 예에서 리스트 a에 있는 숫자 3의 위치는 a[2]이므로 2를 돌려주고, 숫자 1의 위치는 a[0]이므로 0을 돌려준다.

다음 예에서 값 0은 a 리스트에 존재하지 않기 때문에 값 오류(ValueError)가 발생한다.

>>> a.index(0)

Traceback (most recent call last): File ““, line 1, in ValueError: 0 is not in list

리스트에 요소 삽입(insert)

insert(a, b)는 리스트의 a번째 위치에 b를 삽입하는 함수이다. 파이썬에서는 숫자를 0부터 센다는 것을 반드시 기억하자.

>>> a = [1, 2, 3] >>> a.insert(0, 4) >>> a [4, 1, 2, 3]

위 예는 0번째 자리, 즉 첫 번째 요소(a[0]) 위치에 값 4를 삽입하라는 뜻이다.

>>> a.insert(3, 5) >>> a [4, 1, 2, 5, 3]

위 예는 리스트 a의 a[3], 즉 네 번째 요소 위치에 값 5를 삽입하라는 뜻이다.

리스트 요소 제거(remove)

remove(x)는 리스트에서 첫 번째로 나오는 x를 삭제하는 함수이다.

>>> a = [1, 2, 3, 1, 2, 3] >>> a.remove(3) >>> a [1, 2, 1, 2, 3]

a가 3이라는 값을 2개 가지고 있을 경우 첫 번째 3만 제거되는 것을 알 수 있다.

>>> a.remove(3) >>> a [1, 2, 1, 2]

remove(3)을 한 번 더 실행하면 다시 3이 삭제된다.

리스트 요소 끄집어내기(pop)

pop()은 리스트의 맨 마지막 요소를 돌려주고 그 요소는 삭제한다.

>>> a = [1,2,3] >>> a.pop() 3 >>> a [1, 2]

a 리스트 [1, 2, 3]에서 3을 끄집어내고 최종적으로 [1, 2]만 남는 것을 볼 수 있다.

pop(x)는 리스트의 x번째 요소를 돌려주고 그 요소는 삭제한다.

>>> a = [1,2,3] >>> a.pop(1) 2 >>> a [1, 3]

a.pop(1)은 a[1]의 값을 끄집어낸다. 다시 a를 출력해 보면 끄집어낸 값이 삭제된 것을 확인할 수 있다.

리스트에 포함된 요소 x의 개수 세기(count)

count(x)는 리스트 안에 x가 몇 개 있는지 조사하여 그 개수를 돌려주는 함수이다.

>>> a = [1,2,3,1] >>> a.count(1) 2

1이라는 값이 리스트 a에 2개 들어 있으므로 2를 돌려준다.

리스트 확장(extend)

extend(x)에서 x에는 리스트만 올 수 있으며 원래의 a 리스트에 x 리스트를 더하게 된다.

>>> a = [1,2,3] >>> a.extend([4,5]) >>> a [1, 2, 3, 4, 5] >>> b = [6, 7] >>> a.extend(b) >>> a [1, 2, 3, 4, 5, 6, 7]

a.extend([4, 5])는 a += [4, 5]와 동일하다.

파이썬 (Python) 기초_리스트(list) 다루기, index사용, 유용한 함수 모음

리스트 정의하기!

리스트란 여러 개의 데이터를 순서대로 배열한 집합이다.

리스트는 모든 종류의 데이터를 포함할 수 있으며, 심지어 리스트 내에 리스트를 포함하게 할 수도 있다.

리스트에서 곱셈과 덧셈을 사용할 수 있다.

리스트의 길이를 확인하고 싶으면 len( )함수를 사용하면 된다.

리스트의 인덱스(index)로 데이터 다루기!

리스트 내의 각각의 데이터에는 순서가 있으며, 이를 인덱스(index) 라고 한다.

인덱스는 0부터 카운트한다. (1부터 아님)

eg) 리스트 안의 데이터 개수가 5면 인덱스는 0~4가 된다.

인덱스를 이용하면 데이터를 편리하게 다룰 수 있다.

인덱스를 이용하여 리스트 내의 특정 데이터를 불러올 떄는 대괄호 [ ] 안에 인덱스 숫자를 입력하면 된다.

[-1]을 입력하게 되면 인덱스의 마지막 값을 의미한다.

이런게 왜 필요하지 싶지만 의외로 나중에 유용하게 사용되니 기억해두자.

데이터 값은 아는데 인덱스를 모르는 경우 .index 메소드를 사용하면 유용하다.

3은 두번째 값이므로 1을 반환한다.

인덱스를 이용하여 데이터를 수정하거나 삭제도 가능하다.

리스트의 세번째 데이터는 number_list[2] 이므로 위와 같이 100이라는 값으로 수정할 수 있다.

삭제할떄는 del 함수를 사용하면 된다.

리스트의 필요한 부분만 잘라낼 수도 있다. 이런 기능을 슬라이스라고 부른다.

슬라이스는 list[시작index : 끝index] 를 입력하면 된다. 여기서 시작index는 포함되고 끝index는 포함되지 않는다.

eg)10번째부터 20번째까지 총 11개의 배열을 가져오는 경우 list[10:21]

대괄호 안의 시작index를 생략하면 처음부터, 끝index를 생략하면 끝까지를 의미한다.

eg) 처음부터 5까지 [ :5]

85부터 끝까지 [85: ]

파이썬에서 리스트를 많이 사용하는 이유는 리스트와 함께 사용할 수 있는 다양한 함수들이 지원되기 때문이다.

아래는 많이 사용하는 메소트와 함수들을 몇가지 모아두었다.

유용한 메소드들!

.append( ) : 맨 뒤에 객체 추가

.extend( ) : 리스트 합치기

.insert( ) : 인덱스 위치에 객체 추가

.remove( ) : 리스트 내의 객체 제거 (인덱스값 아닌 객체값입력해야함)

.pop( ) : 리스트의 마지막 원소를 꺼내서 따로 저장 (기존 리스트의 마지막값은 제거됨)

.sort( ) : 오름차순 정렬

기타 함수들!

sorted( ) : 오름차순으로 출력, 메소드인 .sort( )와는 다르게 기존의 리스트의 데이터 자체를 바꾸지는 않음.

reversed( ) : 기존 리스트의 역순을 갖는 배열 생성, list(reversed(기존리스트)) 식으로 출력방식을 입력해 주어야함

max( ) : 최대값 출력

min( ) : 최소값 출력

list(range(2,101,2)) : 짝수만 갖는 데이터 만들기

list(range(10,0,-1)) : 10부터 1까지 역순의 데이터 만들기

[파이썬기초] 리스트 요소의 인덱스를 확인

반응형

[파이썬기초]

리스트 요소의 인덱스를 확인

리스트 요소의 위치를 확인하는 방법입니다. index 메소드를 사용합니다. 요소를 입력하면 index를 반환합니다.

리스트를 하나 정의합시다.

>>> L=[1,2,2,4,5] >>> L [1,2,2,4,5]

요소 4의 인덱스를 반환해봅시다.

>>> L.index(4) 3

요소 2의 인덱스를 반환해봅시다. 가장 처음 나온 2의 인덱스를 반환합니다.

>>> L.index(2) 1

반응형

파이썬 인덱스(index)

728×90

반응형

1. 인덱스란

시퀀스 객체의 각 요소는 순서가 정해져 있으며, 이 순서를 인덱스라고 함

>>> a=[12,45,63,2]

>>> a[0]

12

>>> a[1]

45

>>> a[2]

63

>>> a[3]

2

보시면 알겠지만, 인덱스는 무조건 ‘0’부터 시작

튜플, range, 문자열도 []에 인덱스를 지정하면 해당 요소를 가져올 수 있다.

>>> b=(1,2,3,4,5)

>>> b[2]

3

>>> c=range(1,10,2) c=(1,3,5,7,9)

>>> c[3]

7

>>> d=’Hello goodmorning!’ #공백까지 개수친다

>>> d[5]

‘ ‘ #5번째 요소는 공백이라서 ”공백 출력

2. 음수 인덱스 지정하기

시퀀스 객체에 인덱스를 음수로 지정하면 뒤에서부터 요소에 접근하게 된다.

0부터 시작이니까 -1은 뒤 에서 첫 번째, -5는 뒤에서 다섯 번째 요소다.

>>> a=[10,20,30,40,50]

>>> a [-1]

50

>>> a [-5]

10

튜플, range, 문자열도 음수 인덱스를 지정하면 뒤에서부터 접근 가능하다.

>>> b=(1,2,3,4,5)

>>> b [-2]

4

>>> c=range(1,10,2) #c=(1,3,5,7,9)

>>> c [-3]

5

3. 인덱스의 범위를 벗어나면?

에러 납니다.

없는 수인데 당연히 에러 나죠.

>>> a=[10,20,30,40,50]

>>> a [5]

Traceback (most recent call last):

File ““, line 1, in

a[5]

IndexError: list index out of range

4. 마지막 요소에 접근하기

>>> a=[10,20,30,40,50]

>>> len(a) #a의 길이를 구하니

5 #5가 나왔네?

>>> a[5] #a의 길이가 5니까 a [5]하면 나오겠지? 응 오류~

Traceback (most recent call last): #인덱스는 뭐라고? 0부터 시작이라고~그래서 마지막은 길이-1해야 한다고

File ““, line 1, in

a[5]

IndexError: list index out of range

>>> a[4] #객체 a의 길이-1인 4까지 해야 된다

50

>>> a[(len(a)-1)]

50

5. 요소에 값 할당하기

>>> a=[0,0,0,0,0] #a의 요소에 다 0으로

>>> a[0]=1 #a의 인덱스 0에는 1을

>>> a[1]=2

>>> a[2]=3

>>> a[3]=4

>>> a[4]=5

>>> a #a리스트를 출력하면?

[1, 2, 3, 4, 5] #내가 넣은 요소들이 출력됨

단, 튜플, range, 문자열은 저장된 요소를 변경할 수 없다.

즉, 시퀀스 자료형 중에서 튜플, range, 문자열은 읽기 전용.

6. del로 요소 삭제하기

del 시퀀스 객체[인덱스]

>>> a=[10,20,30,40,50,]

>>> del a[2]

>>> a

[10, 20, 40, 50]

단, 튜플, range, 문자열은 저장된 요소를 삭제할 수 없다.

즉, 시퀀스 자료형 중에서 튜플, range, 문자열은 읽기 전용.

728×90

반응형

[Python 3.7] 파이썬 인덱스와 슬라이스 (1)

반응형

1. 시퀀스 객체의 인덱스(index)

1) 양수 인덱스 지정

시퀀스 객체의 각 요소에는 순서가 있는데, 이 순서를 인덱스라고 부르며 우선 리스트를 생성한 후 인덱스를 사용해 요소를 출력해 봅시다.

* 인덱스 사용 방법 : 시퀀스객체[인덱스]

요소는 5개인데, 인덱스 4가 값이 50인 요소를 출력 해왔습니다. 인덱스는 0부터 시작하기 때문에 시퀀스 객체에 있는 요소의 개수보다 1개가 적습니다.

요소의 개수 : 1개, 2개, 3개, 4개 …

인덱스 : 0, 1, 2, 3 …

위의 이미지를 보면 시퀀스 객체에 1, 2, 3, 4, 5라는 각각의 요소들이 있고. 각각의 요소를 a[0]와 같이 인덱스를 표시 해두었습니다. 1편에서 인덱스, 튜플, range, 문자열 모두 시퀀스 객체라고 설명 하였는데, 시퀀스 객체들은 모두 인덱스로 접근할 수 있으며 방식은 같습니다.

2) 음수 인덱스 지정

인덱스는 음수로도 지정할 수 있습니다.

a[0] , a[1] 과 같이 사용할 때에는 앞(왼쪽)에서부터 요소에 접근을 하였다면 음수는 뒤(오른쪽)에서부터 요소에 접근하게 됩니다. [0]은 가장 앞에 있는 첫번째 요소를 접근하고, [-1]은 가장 뒤에있는 첫번째 요소에 접근 합니다.

2. 인덱스를 활용하여 요소에 값 할당 및 삭제

1) 리스트의 원하는 요소에 값 할당

인덱스를 활용하여 리스트의 원하는 요소에 값을 할당하거나, 삭제를 할 수 있습니다.

* 튜플, range, 문자열은 읽이 전용인 시퀀스 자료형이기 때문에 할당, 삭제할 수 없습니다.

어디서 많이 본것같죠? 변수를 할당하는 방식과 같습니다. 변수 할당과 다른점은 리스트의 인덱스를 적어준다는 점 입니다. ‘리스트 a의 0번째 인덱스에 있는 요소(값1)를 10으로 할당 하겠다.’ 라는 뜻 입니다.

2) 리스트의 원하는 요소에 값 삭제

리스트의 원하는 요소에 값을 할당하는건 변수 선언하는것과 같았습니다.

삭제도 마찬가지로 변수를 삭제하는 방식과 큰 차이가 없고 다른점은 인덱스를 표현한다는 것 뿐 입니다. (변수 삭제와 마찬가지로 del을 사용 합니다)

리스트에서 첫번째 요소(인덱스 0)를 삭제하니 1이 삭제 되었습니다.

삭제할때 주의하여야 할 점이 있는데, 바로 요소를 삭제하면서 인덱스가 변경되는 경우 입니다.

1~5가 들어있는 시퀀스 객체의 0번째 인덱스(값1)를 삭제하니 뒤에 있던 요소들의 인덱스가 모두 앞당겨졌습니다.

3. 슬라이스(slice)란?

인덱스로 요소에 접근할때는 하나씩만 접근이 되었습니다. 슬라이스는 인덱스를 사용하여 범위를 정한 후 시퀀스 객체의 요소에 접근 합니다.

* 슬라이스 사용 방법 : 시퀀스객체[시작인덱스:끝인덱스]

문법에 익숙해지기 위해 [1, 2, 3, 4] 처럼 직접 적어 주기보다는 list, range 를 사용하였습니다. range 를 이용하여 0부터 100까지 10씩 건너 뛰어 숫자를 생산하고, list 로 묶어주어 리스트로 할당 되었습니다.

a[0:5] 를 사용하여 리스트 a의 인덱스 0부터 인덱스 5까지를 출력 하였는데, 왜 인덱스 0부터 4까지만 (a[0], a[1], a[2], a[3], a[4]) 출력 되었을까요?

슬라이스를 사용할 때 끝 인덱스에 작성한 숫자에서 -1 을 하시면 됩니다. a[0:10] 을 쓰면 a[0] ~ a[9] 까지 요소에 접근하는거고, a[3:8] 을 쓰면 a[3] ~ a[7] 까지 접근하게 됩니다.

슬라이스로 요소에 접근할때는 끝 인덱스 -1 까지만 접근 한다는 점을 주의하여 주시고, 마찬가지로 a[3:6], a[2:9] 와 같이 시퀀스 객체의 중간 요소에도 접근할 수 있습니다.

슬라이스는 정리할 내용이 많아 글을 나눠서 업로드 하겠습니다.

반응형

[Python] index 함수 – 배열에서 원하는 값의 위치 찾기

index 함수는 배열에서 값의 위치를 찾아주는 함수리며, 중복된 값이 있으면 가장 최소의 위치를 리턴

a 리스트에서 10의 위치 찾기. (최소값인 1이 출력)

a = [11,10,12,13,20,31,11,10,10,11] print(a.index(10)) ———————————– 1

a 리스트에서 2번째 ~ 9번째 위치에서 10의 위치 찾기. (최소값인 7이 출력)

a = [11,10,12,13,20,31,11,10,10,11] print(a.index(10,2,9)) # index(value, start, end) —————————————————- 7

a 문자열에 ‘1’ 이라는 문자 위치 찾기

a = ‘123451’ print(a.index(‘1’)) ——————— 0

a 문자열에 1번째 ~ 6번째 위치에서 ‘1’ 이라는 문자 위치 찾기

a = ‘123451’ print(a.index(‘1’,1,6)) ———————— 5

4.5 데이터프레임 인덱스 조작 — 데이터 사이언스 스쿨

np . random . seed ( 0 ) df4 = pd . DataFrame ( np . round ( np . random . randn ( 6 , 4 ), 2 ), columns = [[ “A” , “A” , “B” , “B” ], [ “C” , “D” , “C” , “D” ]], index = [[ “M” , “M” , “M” , “F” , “F” , “F” ], [ “id_” + str ( i + 1 ) for i in range ( 3 )] * 2 ]) df4 . columns . names = [ “Cidx1” , “Cidx2” ] df4 . index . names = [ “Ridx1” , “Ridx2” ] df4

키워드에 대한 정보 파이썬 인덱스

다음은 Bing에서 파이썬 인덱스 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.

이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!

사람들이 주제에 대해 자주 검색하는 키워드 1분 파이썬 – (10) 인덱스와 슬라이싱

  • 동영상
  • 공유
  • 카메라폰
  • 동영상폰
  • 무료
  • 올리기

1분 #파이썬 #- #(10) #인덱스와 #슬라이싱


YouTube에서 파이썬 인덱스 주제의 다른 동영상 보기

주제에 대한 기사를 시청해 주셔서 감사합니다 1분 파이썬 – (10) 인덱스와 슬라이싱 | 파이썬 인덱스, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.

Leave a Comment