인덱싱 및 슬라이싱은 Python에서 특히 문자열을 사용할 때 중요한 개념입니다.
인덱싱:
WKT, 문자열은 일련의 문자일 뿐입니다.
따라서 각 문자에는 색인이라는 위치가 있으며 특정 문자열에서 해당 위치에 액세스하는 것을 인덱싱.
파이썬에서는 0 기반 인덱싱을 사용합니다. 즉, 문자열의 첫 번째 문자의 인덱스(위치)는 1이 아닌 0이고, 두 번째 문자의 인덱스(위치)는 1입니다.
예를 들어,
> H E L L O W O R L D > 0 1 2 3 4 5 6 7 8 9
이를 양수 인덱싱이라고 합니다. 지수를 참조하기 위해 양수만 사용했기 때문입니다.
'그렇다면 우리도 부정적인 색인을 가지고 있나요?'라고 물으실 수 있습니다.
물론, 여기서는 음수가 아니기 때문에 첫 번째 위치로 0이 없습니다.
음수 인덱싱을 사용하면 문자열 끝의 문자에 액세스할 수 있습니다. 즉, 마지막 문자의 인덱스는 -1이고 마지막 두 번째 문자의 인덱스는 -2 등입니다.
> H E L L O W O R L D > -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
word = "HELLOWORLD" print(word[0]) print(word[5]) H W
비슷하게,
print(word[-1]) print(word[-6]) D 0
색인 생성에 관한 내용입니다.
슬라이싱:
전체 케이크에서 케이크 한 조각을 자르는 것처럼 끈을 자르는 것을 생각해 보세요. 절단을 시작할 위치(색인), 끝낼 위치(끝 색인), 각 조각의 크기(단계)까지 지정할 수 있습니다. 이렇게 하면 우리가 좋아하는 방식으로 케이크(또는 끈)의 작은 부분을 정확하게 만들 수 있습니다!
파이썬에서 문자열을 자르면 문자열 내에서 시작할 위치와 끝날 위치를 지정하여 문자열의 특정 부분을 가져올 수 있습니다.
예를 들어 메시지에 "HELLOWORLD"가 포함되어 있으면 message[3:7]은 인덱스 3('L')에서 시작하고 인덱스 7('D') 바로 앞에서 끝나기 때문에 "LOWO"를 제공합니다. 이런 식으로 우리는 필요한 문자열 부분을 추출할 수 있습니다!
- 슬라이싱의 기본 구문은 다음과 같습니다.
string[start:stop]
text = "HappyBirthday" print(text[0:5]) print(text[5:13]) Happy Birthday
파이썬에서 문자열을 슬라이싱할 때 시작 또는 중지 인덱스를 생략하면 문자열의 처음부터 끝까지 자를 수 있습니다.
그만큼 간단합니다!
- 한 단계씩 슬라이싱,
Python에서 문자열을 자를 때 문자 사이의 간격을 지정하려면 콜론과 단계 값을 추가하면 됩니다.
string[start:stop:step]
슬라이스를 생성할 때 문자열 문자를 건너뛰는 방법을 제어할 수 있습니다.
message = "HELLOWORLD" print(message[1::2]) EORL
message[1::2]는 인덱스 1('E')부터 문자열 끝까지 2단계로 자르기 시작합니다.
따라서 인덱스 1, 3, 5, 7의 문자를 포함하여 "EORL"을 제공합니다.
지금까지 포지티브 슬라이싱에 대해 알아보고 이제 네거티브 슬라이싱에 대해 알아보겠습니다.
- 네거티브 슬라이싱 :
message = "HELLOWORLD" print(message[-2:2:-1]) ROWOL
몇 가지 질문을 살펴보겠습니다.
#문자열을 받아 첫 번째 문자와 마지막 문자로 구성된 새 문자열을 반환하는 함수를 작성하세요.
word = "Python" end = word[0] word[5] print(end) Pn
#주어진 문자열을 반전시키는 함수를 작성하세요.
word = "Python" print(word[::-1]) nohtyP
#문자열이 주어지면 3번째부터 8번째 문자(포함)까지 부분 문자열을 추출하여 반환합니다.
text = "MichaelJackson" print(text[3:9]) haelJa
#이메일 주소가 주어지면 도메인을 추출하여 반환합니다.
email = "[email protected]" domain = email[:-10] print(domain) hello_world
#주어진 문자열에서 세 번째 문자마다 반환하는 함수를 작성하세요.
text = "Programming" print(text[::3]) Pgmn
#두 번째 문자마다 건너뛰고 결과 문자열을 반대로 바꾸는 함수를 작성하세요.
text1 = "Programming" print(text1[::-2]) gimroP
#주어진 문자열에서 짝수 인덱스에 있는 문자를 추출하여 반환하는 함수를 작성하세요.
text = "Programming" print(text[::2]) Pormig
좋아요, 이게 기본이에요.
.....
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3