본문 바로가기
Python

파이썬 초급 #013 문자열과 인덱싱 , 음수 인덱스 출력

by Smart Factory in 2020 2022. 1. 21.
728x90
반응형

안녕하세요. 스마트팩토리입니다. 문자열과 인덱싱 , 음수 인덱스 출력에 대해 알아보겠습니다 

 

 
1.  문자열과 인덱싱

가.  문자열과 인덱싱

(1) 문자열 인덱싱
-인덱스란 문자열이 포함된 각각의 문자에 매겨진 번호
-인덱싱이란 문자열에서 [] 를 붙여 출력하는 것 
-인덱싱은 음수도 되면 거꾸로 순환하여 나타난다. (아래 설명 참조)

- 인덱싱으로 개별 문자 출력은 할 수 있지만 부분 수정은 할 수 없습니다. 

 

문자열 코드 예시

코드를 보면서 알아보겠습니다. 

코드를 보면서 알아보겠습니다. 

va1="love"

 변수 va1에 문자열 love를 저장하였습니다. 
메모리에 객체로 하여 생성되었습니다.

print(va1)

출력하면 문자열 그대로 love가 출력됩니다. 

print(va1[0])

val1 을 쓰면 변수 전체 값이 출력되지만 변수명[숫자]형태로 하면 해당하는 번호에 값이 출력되게 됩니다. 이를 인덱스라고 인덱스의 넘버링은 0번부터 시작입니다. 


print(va1[1])  ---> 0
print(va1[2])  --->v
print(va1[3])  --->e

그럼 위의 각각의 출력값이 되는 것을 알 수 있습니다. 

# print(va1[4])

하지만 자료의 크기 즉 데이터 길이를 벗어나면 범위에러가 발생하게 됩니다. 

물론 뛰어쓰기가 있다면 문자열에서는 한칸을 차지하게 됩니다. 

va1="love"
print(va1)
print(va1[0])
print(va1[1])
print(va1[2])
print(va1[3])
# print(va1[4])

 

음수 인덱스 출력

 

 

va1="love forever"
print(va1)
print("val의 길이:",len(va1))

문자열은 뛰어쓰기한 부분까지 하나로 보고 인덱스를 보면 됩니다. 

위처럼 12개 공간이기 때문에 인덱스는 11번까지 0부터 시작이기 때문에 그렇습니다. 

print(va1[-2])
print(va1[-1])

음수의 경우는 주어진 문자열을 뒤부터 순차적응로 진행합니다. 이는 문자열의 크기에 따라서 마지막 문자가 인덱스 번호가 거꾸로 감소하게 됩니다. 

음수는 숫자로 적어보았습니다. 물론 더 작은수로도 순환을 하는 구조입니다. 

일반 변수에서 문자열의 부분 수정은 할 수 없습니다. 변수값 자체를 덮어쓰기는 되지만 부분 변경은 되지 않습니다. 

va1="love forever"
print(va1)
print("val의 길이:",len(va1))
print(va1[-2])
print(va1[-1])
print(va1[0])
print(va1[1])
print(va1[2])
print(va1[3])
print(va1[4])
print(va1[5])

 

 

 

 

 

728x90
반응형

댓글