# slicing

29개의 포스트

인덱싱(Indexing)과 슬라이싱(Slicing)

🧷 인덱스(index) / 인덱싱(indexing) 0부터 시작한다. -1인 항목이 제일 마지막 항목이다. 인덱스는 데이터베이스 분야에 있어서 테이블에 대한 동작의 속도를 높여주는 자료 구조를 일컫는다. 인덱스는 테이블 내의 1개의 컬럼, 혹은 여러 개의 컬럼을 이용하여 생성될 수 있다. 고속의 검색 동작뿐만 아니라 레코드 접근과 관련 효율적인 순서 매김 동작에 대한 기초를 제공한다. 변수명[인덱스 숫자] 시퀀스의 인덱스를 지정하여 항목을 가져오는 방법 🧷 슬라이스(slice) / 슬라이싱(slicing) x[start:end-1:step] 변수명[시작 인덱스(이상):끝 인덱스(미만):증감크기] 첫 요소부터 포함 : 시작 숫자 생략 가능 마지막 요소까지 포함 : 끝 숫자 생략 가능 증감 크기 1 : 증감크기 생략 가능 슬라이싱은 **연속적인 객체들에(예: 리스트, 튜플, 문자열) 범위를 지정해

2023년 8월 15일
·
0개의 댓글
·
post-thumbnail

[Python]2023.08.07_리스트

복습 파이썬 설치 파이썬 변수 if, loop문 (dba 작업 스크립트 출력하는 무한루프) 문자열 (db 문제가 생겼는지 확인하는 중요한 파일인 alert log file을 분석) -> 디비에 앞으로 생길 위험을 예방할 수 있습니다! 코드 에러는 가볍게 넘기면 되는데, db file의 블럭이 깨지는 조짐을 보이는 에러번호는 눈여겨 봐야합니다. TIL 리스트 슬라이싱 (slicing) append,insert,extend sort(),sorted,reverse(),reversed count,index len, sum, map, filter, zip, enumerate 문제 65. dba 일을 편하게 하는 자동화 스크립트에 alert log file 분석을 4번으로 추가하세요 리스트 단원 * ✅ 리스트의 주요 함수들!* ![](https://velog.velcdn.com/images/s

2023년 8월 7일
·
0개의 댓글
·

[알고리즘]리스트

1. sum 내부에 숫자(정수, 실수)로만 이루어진 iterable한 자료형(리스트나 튜플 처럼 인덱스 순환 접근이 가능한 자료형)을 인자로 받음 리스트 안의 숫자를 다 더할 수 있다. 2. index A라는 2차원 리스트가 있고 A를 오름차순 정렬한 뒤 원래 리스트에서 몇 번째인지 출력. 3. 슬라이싱 리스트 뒤집기 4. map(function, iterable) 첫 번째 매개변수로는 함수가 오고 두 번째 매개변수로는 반복 가능한 자료형(리스트, 튜플 등)이 옵니다. map 함수의 반환 값은 map객체 이기 때문에 해당 자료형을 list 혹은 tuple로 형 변환시켜주어야 합니다. 리스트에 값을 하나씩 더해서 새로운 리스트를 만드는 작업 : 반복문이랑 map함수 비교 1. for 반복문 이용 2. map 함수 이용

2023년 6월 20일
·
0개의 댓글
·
post-thumbnail

Python CookBook - 2

📌 리스트(list) 성질과 쓰임이 비슷한 항목들을 저장할 때 사용하는 자료형으로 python에서 사용 가능한 모든 자료형을 담을 수 있는 자료형입니다. lists는 [] 로 묶어서 선언하고 각 요소를 , 로 구분합니다. [[요소1], [요소2], [요소3]···] 또는 list([[요소1], [요소2], [요소3]···]) 형식으로 선합니다. 인덱싱(indexing) 가르킨다는 의미로 list 안에 담겨있는 하나의 원소를 참조 or 수정하는 연산입니다. [] 안에 있는 값을 인덱스 값 or 인덱스 번호라고 하며, 인덱스 값은 앞에서부터 매기면 0번(1번째 요소)부터 n번 (n+1번째 요소) 까지 입니다. 반대로 뒤에서부터 인덱스 번호를 매기면 -1부터 -n입니다. ![](https://velog.velcdn.com/images/sdj0301/post/dfac5cb

2023년 6월 2일
·
0개의 댓글
·

[파이썬 튜토리얼] Indexing과 Slicing

Level 1 앞의 두 단원을 통해 list와 tuple에 대해서 알아봤다. 이 둘은 요소들이 모두 순서를 가지고 나열되어 있기 때문에, Sequence라는 범주에 포함시키곤 한다. 이렇게 Sequence에 해당하는 타입들은 0으로 시작하는 정수 번호가 순차적으로 부여된다. 이러한 순서를 인덱스라고 부른다. Sequence의 각 요소에 접근하기 위해 인덱스를 사용할 수 있다. > Sequence가 되기 위해서는, 파이썬에서 정해 둔 몇 가지 요구사항을 만족해야 한다. 당장은 이해하기 어려우므로, 순서를 통해 요소에 접근할 수 있는 타입을 sequence라고 생각하면 된다. Indexing 인덱스를 통해 Sequence의 요소에 접근하는 것을 인덱싱(Indexing)이라고 한다. 다음은 그 예제다. 결과 Sequence의 뒤에, 접근하고자 하는 요소의 번호를 대괄호로 감싸 명시하는 식이다. 이러한 Inde

2023년 5월 31일
·
0개의 댓글
·

Python slicing

사용법 > a 라는 연속적인 객체인 자료구조(리스트, 튜플, 문자열...)가가 있다고 가정했을때. a[start : end : step] start : 슬라이싱을 시작하는 위치 (0부터 시작) end : 슬라이싱을 끝내는 위치 (end는 포함하지 않음.) step : 자료를 몇개씩 끊어서 가져올지와 방향을 설정 예제 특정 시작위치에서 끝까지 가져오기 a[start : ] 시작점 부터 특정 위치까지 가져오기 a[ : end] 특정 시작위치에서 특정 위치까지 모두 가져오기 a[start : end] step 활용 a[start : end : step] step이 양수 일 때 오른쪽으로 step만큼 이동하면서 가져온다. step이 음수 일 때 왼쪽으로 step만큼 이동하면서 가져온다. 이렇게 거꾸로 출력할 때에는 start, end 값도 왼쪽위치 값부터 입력해저야 한다.

2023년 5월 13일
·
0개의 댓글
·
post-thumbnail

pandas slicing

주가 data의 volume 열에서 '0' 값을 갖는 행들 제외. 야후 finance를 이용해서 받은 sk하이닉스의 data를 보면, 장이 서지 않은 날의 volume은 0인 것을 알 수 있다. 이 행들은 data에서 제외 하는 방법이다. Volume 열에 '0' 값을 갖는 행들이 존재 한다. 이 행들을 삭제한 data frame을 다시 만들고 싶어진다. Volume 열에서 0이 아닌 행들로 df_1을 구성.

2022년 12월 5일
·
0개의 댓글
·

LeetCode 766

문제 링크 문제 설명. 메트릭스가 주어지고, 이 메트릭스가 Toeplitz인지 확인해보는 문제. definition of Toeplitz matrix. 위키 설명 메트릭스 내의 모든 diagonal element들이 서로 같은 값을 가지는 매트릭스를 말한다. 수식을 넣어서 조금 더 간단하게 설명하면 nxm matrix Mnm에 대해서, a{i,j} = a_{i+1,j+1} for all 1<=i<n, 1<=j<m 이 되는 매트릭스를 말한다. 풀이 설명 및 코드. 풀이 방법이야 간단하다. 대각선상에 있는 원소를 비교해야하고, input이 이중배열로 들어오기 때문에 원소 하나하나를 비교하지 않고, 행과 행을 통째로 비교하는 방식을 사용했다. 정확하게, i번째 행에

2022년 10월 31일
·
0개의 댓글
·
post-thumbnail

[프로그래머스 lv2] 압축 Python

2018 KAKAO BLIND RECRUITMENT문제이다. 메뉴얼만 잘 따라가면 쉽게 풀 수 있었던 문제. 하지만 문자열 인덱싱 부분에서 살짝 헷갈리는 부분이 있어서 고찰겸 글을 써본다 밑은 작성해서 통과한 코드이다. 문제의 메뉴얼에서 w에 해당하는 사전의 색인 번호를 출력하고, 입력에서 w를 제거한다. 입력에서 처리되지 않은 다음 글자가 남아있다면(c), w+c에 해당하는 단어를 사전에 등록한다. 부분에서 c를 저장할 때 문자열을 제거하는 과정을 문자열 슬라이싱을 하고 슬라이싱한 문자열의 첫번째 글자를 c에 저장하는 방식으로 구현을 했다. 하지만 여기서 만약 이런식으로 바꾸면 이렇게 인덱싱 에러가 난다. > 원인은 msg가 "" 일때 msg[0] 은 읽을

2022년 4월 6일
·
0개의 댓글
·

[python 기초] Code-kata week3-2

🖥 Code-kata week3-2 문제 문자로 구성된 배열을 input으로 전달하면, 문자를 뒤집어서 return 해주세요. 새로운 배열을 선언하면 안 됩니다. 인자로 받은 배열을 수정해서 만들어주세요. Input: ["h","e","l","l","o"] Output: ["o","l","l","e","h"] Input: ["H","a","n","n","a","h"] Output: ["h","a","n","n","a","H"] 풀이 그대로 reverse 하는 문제. 역순해주는 slicing을 적용하면 된다. slicing할 때 각 위치의 값은 start,end,step이다. 그래서 위와 같이 작성하면 s의 start-end까지 역순(-1)하겠다는 의미다. 그렇다면 reverse() 와 list[::-1] 중 무엇이 더 좋은 방법일까. 자세한 예시는 [여기 클릭](https://www.geeksforgeeks.org/pyt

2022년 4월 5일
·
0개의 댓글
·
post-thumbnail

수박수박수

나의 풀이 '수박'을 몇 번 곱해도 n번째까지 슬라이싱을 하면 문제가 없기에 위처럼 작성해보았다. 충분히 효율적인 코드라 생각하여 다른 사람의 코드를 검색하지는 않았다.

2022년 3월 27일
·
0개의 댓글
·
post-thumbnail

Junit Test 관련 어노테이션 사용법

개요 지금까지 단순히 레이어를 테스트하는데에 있어 @SpringBootTest 어노테이션을 만을 사용해 테스트를 진행했었습니다. 그러다보니 애플리케이션의 규모가 커짐에 따라 테스트 속도가 현저히 떨어져 개발 생산성이 점점 저하되는 상황에 놓이게 되었습니다. 이 문제를 해결하기 위해 레이어별로 독립적으로 테스트할 수 있는 방법(단위 테스트)에 대해 찾아봄으로써, 다양한 슬라이싱 테스트를 전용 어노테이션과 mockito에 대해 알게되어 이 정보를 공유하고자 합니다. @SpringBootTest 어노테이션의 문제점 애플리케이션을 운영하는데에 필요한 모든 설정정보 및 Bean을 생성하기 때문에 애플리케이션의 규모에 따라 시간이 오래걸리고 무겁습니다. 그렇기 때문에 디버깅하는데에 있어 시간이 오래걸리고, 이는 테스트 코드를 통한 빠른 피드백의 장점을 희석시킬 수 있게 됩니다. > 위 어노테이션의 사용이 필요하다면 꼭 사용을 해

2022년 3월 13일
·
0개의 댓글
·
post-thumbnail

[python] numpy의 함수들

1. nbytes ndarray object의 메모리 크기 반환 2. handling shape 2.1 reshape() array의 크기를 변경, element의 갯수는 동일 reshape의 변수로 -1을 입력하면, 다른 숫자에 맞춰 자동으로 reshape됨 2.2 flatten() 다차원 array를 1차원 array로 변환 3. slicing list와 달리 행과 열 부분을 나눠서 slicing이 가능 [] 안에 쉼표(,)를 기준으로 행과 열을 구분 4. creation function 4.1 arange() array의 범위를 지정하여, 값의 list 생성 4.2 eye() 정사각행렬이 아닌 대각 행렬 생성 가능, k값으로 시작 index 변경 가능 ![](https://images.velog.io/images/woojjn/post/44717926-50f5-4bae-8c3e-e2f648530ea3/ima

2022년 1월 23일
·
0개의 댓글
·

[python] list

1. 슬라이싱(Slicing) list의 주소 값을 기반으로 부분 값을 반환 2. 리스트의 연산 2.1 concatenation 2.2 extend 리스트에 새로운 리스트 추가 concatenation의 (+) 연산과 같음 2.3 remove, del 리스트 원소 제거 3. 리스트 메모리 저장 방식 3.1 주소값이 같은 경우 3.2 주소값을 다르게 선언하는 방법 다차원 list의 경우 import copy A = [1, 2, 3, 4, 5] B = copy.deepcopy(A)

2022년 1월 17일
·
0개의 댓글
·
post-thumbnail

BAEKJOON /2908:제출

[python] 문자열 거꾸로 출력하기 문자열을 뒤집어서 출력할 수 있는 방법 3가지 문자열 뒤집기 for 문 문자열 뒤집기 reverse 문자열 뒤집기 [::-1] 1. 반복문을 통해서 파이썬 문자열 뒤집기 for 반복문을 통해 기존의 문자열 앞에 하나씩 넣어서 밀어준다. "abcd" 라는 문자열이 있다면 a, b, c, d 이런 식으로 for 반복문을 돌고 새 문자열 = a + 새 문자열('') 새 문자열 = b + 새 문자열('a') 새 문자열 = c + 새 문자열('ba') 새 문자열 = d + 새 문자열('cba') 변수 c 가 문자 하나하나 빼오는 것이고,

2022년 1월 11일
·
0개의 댓글
·
post-thumbnail

Data Structure - 자료구조

1. 자료구조의 배경 자료구조는 컴퓨터 사이언스에 있어 전체적인 관점의 기초공사 개념이다. 프로그래밍언어와는 별개로, 대용량의 다양한 데이터를 효율적으로 처리(저장)하기 위해 자료구조라는 개념이 생겨나게 되었다. 효율적인 처리 > 효율적인 처리 자동화 빠른 계산 반복 처리 여러 값 동시 처리 빠르게 변경되는 값들에 대한 처리 특정 변수 처리 특정 값을 다양한 형태로 보고자 할 경우 조건 처리 다음과 같은 작업을 예시로 들 수 있겠다. 다음 예시는 여러 값을 (리스트 형식으로) 입력 받고, 특정 두 수의 합에 해당하는 값을 넣으면 그 두개 숫자에 해당하는 인덱스 값을 반환하는 함수이다. (참고) 함수 호출의 다양한 방식 > (참고) 함수를 호출하는 경우 파라미터를 설정하고 인자 값을 전달하는 과정이 있는데, 이는 다양한 방식으로 가능하다. 함수에 값만 전달 함수에 변수이름과 값을 함께 전달

2021년 11월 22일
·
0개의 댓글
·
post-thumbnail

[BOJ] 2908: 상수

🔒 예제 🔧 풀이 🔑 답안 💡 개념

2021년 7월 28일
·
0개의 댓글
·
post-thumbnail

[BOJ] 11721: 열 개씩 끊어 출력하기

🔒 예제 🔧 풀이 🔑 답안 💡 개념

2021년 7월 26일
·
0개의 댓글
·
post-thumbnail

리스트

🍚 리스트(list) > - 리스트는 변수와 같이 하나의 정보가 아닌, 여러개의 정보를 주고 싶을때 사용한다. >- 소수형, 정수형, 문자열 모두 쓸 수 있고 섞어 쓸 수도 있다 예시 💻 파이썬 👀 결과 🍚 인덱싱(Indexing) >- 데이터를 불러올 때는 인덱스(index) 번호로 불러오면 된다. >- 리스트에서 인덱스는 0부터 시작한다. >- 양수 인덱스 뿐만 아니라 음수 인덱스도 가능하다. 음수 인덱스는 -1부터 사용한다. >- index 메소드를 이용하여 특정원소의 인덱스값을 알아낼 수 있다. 예시 💻 파이썬 👀 결과 🍚 슬라이싱(Slicing) >- 슬라이싱을 이용하여 여러개의 원소를 불러올 수 있다. >- 리스트[a, b] 까지 라면 a부터 시작해 b되기전까지의 원소를 불러온다. >- [a:] 처럼 뒤를 생략하고 쓰면, 자동으로 a부터 리스트 끝까지 불러온다. >- [:b]

2021년 3월 19일
·
0개의 댓글
·