name = input('Enter:')
print(type(name))
print(name)
다음과 같이 숫자를 입력하더라도 str 타입으로 반환된다.
fruit = 'banana'
letter = fruit[0]
print(letter)
letter = fruit[1]
print(letter)
letter = fruit[2]
print(letter)
# 결과
b # fruit[0]
a # fruit[1]
n # fruit[2]
인덱스가 5번째 자리까지인데 6번째 자리를 찾으려 하지만 없기 때문에 오류 발생
fruit = 'banana'
letter = fruit[6]
print(letter)
fruit = 'banana'
print(len(fruit))
# 결과
6
len() 함수를 이용하여 문자열의 길이만큼 루프를 실행이 가능하다.
while문
# while 루프
fruit = 'banana'
index = 0
while index < len(fruit) :
letter = fruit[index]
print(index, letter)
index = index + 1
# 결과
0 b
1 a
2 n
3 a
4 n
5 a
# for 루프
fruit = 'banana'
for letter in fruit :
print(letter)
# 결과
b
a
n
a
n
a
for letter in 'banana':
print(letter)
# 결과
b
a
n
a
n
a
word = 'banana'
count = 0
for letter in word:
if letter == 'a': # 문자가 a일 경우
count = count + 1
print(count)
# 결과
3
[ : ] 를 사용하여 특정 범위에 있는 문자를 가져올 수 있다.
[ : ] 두 번째에 들어갈 숫자는 그 전까지만 인덱싱한다.
ex) [0 : 4] ⇒ 0, 1, 2, 3 번째 문자까지만 인덱싱함
두 번째에 들어갈 숫자가 문자열 마지막이상을 가르키는 경우 문자열의 마지막에서 멈춘다.
myString = 'Monty Python'
print(myString[0:4])
# Mont 출력
print(myString[6:7])
# P 출력
print(myString[6:20])
# Python 출력
print(myString[:2])
# index값이 2에 해당하는 문자 전까지 출력 즉, Mo 출력
print(myString[8:])
# index값이 8에 해당하는 문자부터 출력 즉, thon 출력
print(myString[:])
# 전체 출력
+
를 이용한다.firstString = 'Hello'
secondString = 'There'
print(firstString + secondString)
# HelloThere 출력
thirdString = firstString + ' ' + secondString
print(thirdString)
# Hello There 출력
fruit = 'banana'
print('n' in fruit) # True로 출력
print('m' in fruit) # False로 출력
print('nan' in fruit) # True로 출력
if 'a' in fruit :
print('Found it!') # Found it으로 출력
.
을 붙임으로써 호출이 가능하다.greet = 'Hello Bob'
zap = greet.lower()
print(zap)
# hello bob 출력
print(greet)
# Hello Bob 출력
print('Hi There'.lower())
# hi there 출력
print(greet.upper())
# HELLO BOB 출력
fruit = 'banana'
pos = fruit.find('na')
print(pos) # 2 출력
aa = fruit.find('z') # 문자열을 찾지 못하므로 -1 반환
print(aa) # -1 출력
greet = 'Hello Bob'
nstr = greet.replace('Bob', 'Jane') # Bob 대신 Jane으로 바꾸기
print(nstr)
nstr = greet.replace('o','X')
print(nstr)
greet = ' Hello Bob '
print(greet.lstrip()) # 왼쪽의 공백이 삭제됨 => 'Hello Bob '
print(greet.rstrip()) # 오른쪽의 공백이 삭제됨 => ' Hello Bob'
print(greet.strip()) # 양쪽의 공백이 삭제됨 => 'Hello Bob'
⚡ 결과는 strip()이랑 똑같이 보이지만
실제로 lstrip은 오른쪽 공백은 살아있음 ⇒ 'Hello Bob '
line = 'Please have a nice day'
print(line.startswith('Please'))
# True 출력
print(line.startswith('p'))
# False 출력 : 대소문자 구분해줘야함
💡 문자열의 처음은 항상 0부터 시작한다는 것을 기억해두자!