string1 = 'Some text'
string2 = "어떤 텍스트"
string3 = '{}도 {}도 지금 이것도 문자열'.format(string1, string2)
print(string1, string2, string3)
quote = 'say "a!"'
emphasize = "'b!' says"
error = "said "c!"" #오류
long_string = '''first
second'''
print(long_string)
a = ''' say ' and "!'''
[] 사용 : 한 번에 한 문자씩 접근 가능함
a = 'banana'
print(a[0]) # b 출력
i = 1
print(a[i+1]) # n 출력
print(len(a)) # 6 출력
i = 0
#while문 이용하기
while i < len(a):
letter = a[i]
print(letter)
i = i+1
#for 이용하기
for letter in a:
print(letter)
pre = 'JKLMNOPQ'
suffix = 'ack'
for letter in pre:
print(letter + suffix)
s = 'Monthly Python'
print(s[0:6])
print(s[6:12])
print(s[3:])
print(s[:4])
print(s[:])
[n:m] : 문자열의 n부터 m-1까지 출력됨
s[0] = 'K' # error!
new_s = 'K' + s[1:]
print(new_s) #Konthly Python 출력
def find(word, letter):
index = 0
while index < len(word):
if word[index] == letter :
return word
index = index + 1 # 해당 문자 찾을 때까지
return -1
word = 'tomato'
count = 0
for i in word :
if i == 't' :
count = count + 1
print(count) # 2 출력
word = 'tomato'
new_word = word.upper() #TOMATO
호출(invocation) : 메서드 호출(call)
i = word.find('t') # 0 출력
find('찾고자 하는 문자') : 해당 문자가 위치한 첫번째 인덱스만 반환
print(word.find('t', 3)) # 4 출력
print(word.find('t', 1, 2)) # -1 출력
두 번째 인수 : 선택인수(optional argument)로 찾기를 시작할 위치
세 번째 인수 : 찾기를 중단할 위치
in : 첫 번째 문자열이 두 번째 문자열의 부분 문자열이면 True 반환
'a' in 'train' # true
def in_both(a,b):
for i in a:
if i in b:
print(i)
print(in_both('apples', 'oranges'))
def reverse(a,b):
if len(a) != len(b):
return -1
i = 0
j = len(b) - 1
while j > 0:
if a[i] != b[j]:
return False
i = i + 1
j = j - 1
return True
print(reverse('spot', 'tops'))
def rotate_letter(letter, n):
start = ord('a')
c = ord(letter) - start
i = chr((c+n)%26+start)
return i
def rotate_word(word, n):
s = ''
for i in word:
s += rotate_letter(i, n)
print(s)
print(rotate_word('cheer', 7))
chr() : 문자를 숫자코드로 반환
ord() : 숫자를 문자코드로 반환