본문 바로가기

작업 공간/프로그래밍 [파이썬 기초] 3. 문자와 인덱스

by 서울나기 2020. 1. 22.

1. 문자열

문자를 다루는 다양한 법칙이 있다. 문자열을 만들기 위해서는 따옴표를 사용한다. (작은따옴표, 큰 따옴표 모두 사용 가능)

my_str1 = 'a'
my_str2 = '3.141592'
my_str3 = '안녕하세요'
my_str4 = "안녕하세요"

print(my_str1) # a가 화면에 출력
print(my_str2) # 3.141592가 화면에 출력
print(my_str3) # 안녕하세요가 출력
print(my_str4) # 안녕하세요가 출력

3.141592를 보면 숫자인데 '따옴표' 처리가 되어있다. 이것은 치킨인가? 갈비인가? 결론부터 말하자면 따옴표 안에 있는 것은 문자로 취급된다.

number = '3.14'
print(type(number)) # type()함수는 변수의 타입을 알 수 있다.

# 결과값은 <class 'str'>로 나온다. 문자라는 의미.

'''
미리 알아두면 좋은 함수

type() 괄호안의 자료형을 알 수 있다.
int() 괄호안의 자료를 숫자형으로 만든다.
str() 괄호안의 자료를 문자열로 만든다.
'''

문자열도 연산이 가능하다.

+ 문자와 문자를 더한다
* 문자를 반복한다 (문자열에 숫자만 곱할 수 있다.)
my_str1 = '안녕'
my_str2 = '여러분~'
my_str3 = '모두' + '부자' + '되세요~'

print(my_str1 + my_str2) # 안녕여러분~
print(my_str2 * 3) # 여러분~여러분~여러분~ (3번 반복)
print(my_str3) # 모두부자되세요~
print(my_str2 + my_str3) # 여러분~모두부자되세요~

여러 문자열을 사용하고 싶을 땐 처음에 나온 주석과 같은 방법으로 ''' ~ ''', """ ~ """ 안에 넣으면 된다.

print('''안녕하세요.
아이유는
사랑입니다.''')

 


2 인덱스 index

문자열에서 특정 문자를 가져올 수 있는데 그 위치를 인덱스index라고 한다. 컴퓨터에서 숫자는 0부터 시작하기 때문에 첫 번째 글자는 [대괄호]를 써서 '[0]'이라는 주소를 가지게 된다.

0부터 1, 2, 3, 4~ / 반대는 -1부터 -2, -3, -4~

# 양수는 앞 0 부터
my_str = 'PROGRAMIZ'
print(my_str[0]) # P 표시
print(my_str[2]) # O 표시
print(my_str[4]) # R 표시
print(my_str[9]) # 초과하는 숫자를 쓰면 에러가 난다.

# 음수는 뒤 -1 부터
print(my_str[-1]) # Z 표시
print(my_str[-2]) # I 표시
print(my_str[-9]) # P 표시

여러 개의 문제를 가져오는 방법도 있는데 슬라이싱slicing 이라고 한다. [시작:끝]으로 가져올 영역을 표시한다.

유의할 점은 뒷부분이다. [6]~[9]까지 가져오고 싶으면 [6:10]을 써야 한다.
또한 띄어쓰기 부분도 하나의 주소를 같는다.

다 생각이 있어서 이렇게 했겠거니.. 해야할 부분

 

my_str = 'Monty Python'
print(my_str[0:2]) # Mo 출력
print(my_str[6:10]) # Pyth 출력
print(my_str[-12:-7]) # Monty 출력

숫자를 생략할 수도 있다. 앞의 수가 생략되면 처음부터~라는 의미고 뒤의 수가 생략되면 ~마지막까지 라는 의미이다.

my_str = 'Monty Python'
print(my_str[:2]) # Mo 출력
print(my_str[3:]) # ty Python 출력
print(my_str[-3:]) # hon 출력
print(my_str[:-3]) # Monty Pyt 출력

댓글