# 문제 1 문자열 뒤집기
# 문자열 my_string 이 매개변수로 주어진다.
# my_string을 거꾸로 뒤집은 문자열을 return하도록 solution함수를 완성하라
# 단 1<= my_string의 길이 <= 1000
'''
def solution(my_string):
return my_string[::-1]
my_string = "hello world"
result = my_string[::-1]
print(result)'''
# 문제 2 특정 문자 제거하기
# 문자열 my_string 과 문자 letter 이 매개변수로 주어진다.
# my string 에서 letter 를 제거한 문자열을 return 하도록
# solution 함수를 완성하라
# 단, 1<= my_string 의 길이 <= 100
# letter은 길이가 1인 영문자
# my_string과 letter은 알파벳 대소문자로 이루어져 있다
# 대문자와 소문자를 구분한다
'''
def solution(my_string, letter):
return my_string.replace('letter', '')
my_string = "letter"
my_string = my_string.replace('letter', 'LETTER')
print(my_string)
'''
# replace('바꿀문자열', '새문자열')
# 문자열 안의 문자열을 다른 문자열로 바꾼다.
# 주의할 점은 * 문자열 자체는 변경하지 않으며 바뀐 결과를 반환한다.
# 때문에 my_string의 바뀐 결과를 유지하려면
# my_string = my_string.replace('바꿀 문자열', '새 문자열')
# 을 입력해 주어야한다.
# 문제3 문자 반복 출력하기
# 문자열 my_string 과 정수 n이 매개변수로 주어질 때 ,
# my_string 에 들어있는 각 문자를 n만큼 반복한 문자열을
# return 하도록 solution 함수를 완성하라
# 단 2<= my_string 길이 <=5
# 2<= n <= 10
# "my_string"은 영어 대소문자로 이루어져 있다
'''
def solution(my_string, n):
answer = '' # answer 초기화
for i in my_string: # my_string 의 각 문자를 i에 하나씩 대입하여 반복문 실행
answer += i * n # i를 n번 반복해서 answer에 추가한다
return answer # 마지막으로 answer 을 반환함
my_string='love'
print(solution(my_string, 2)) # print 결과는 lloovvee
'''
# 문제4 편지
# 글자 한 자 한 자를 가로 2cm 크기로 적으려고 하며, 편지를 가로로만 적을 때,
# 축하 문구 message 를 적기 위해 필요한 편지지의
# 최소 가로길이를 return 하도록 solution 함수를 완성하라
# 단, 공백도 하나의 문자로 취급한다
# 1 <= message의 길이 <= 50
# 편지지의 여백은 생각하지 않는다
# message 는 영문 알파벳 대소문자, '!', '~' 또는 공백으로만 이루어져 있다
'''
def solution(message):
return len(message)*2
message = ('love python')
print(solution(message)) # print 결과는 22 !
'''
# 문제5 모음 제거
# 영어에선 a e i o u 다섯 가지 알파벳을 모음으로 분류한다
# 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을
# return 하도록 solution 함수를 완성하라
# 단, my_string 은 소문자와 공백으로 이루어져 있다
# 1<= my_string의 길이 <=1000
'''
def solution(my_string):
eng = ['a', 'e', 'i', 'o', 'u']
answer = ''
for char in my_string: # char을 반복문으로 돌면서
if char not in eng: # char.eng에 'a' 'e' 'i' 'o' 'u'가
answer += char # 있는지 검사하고, 아니라면 저장하여
return answer # 이를 반환한다
my_string = ('apple i love you')
print(solution(my_string)) # 결과는 ppl lv y 성공!
'''
# 문제6 문자열안에 문자열
# 문자열 str1, str2 가 매개변수로 주어진다
# str1 안에 str2 가 있다면 1을 없다면 2를 return 하도록 solution 함수를 완성하라
# 단, 1<= str1 의 길이 <= 100
# 1<= str2 의 길이 <= 100
# 문자열은 알파벳 대문자, 소문자, 숫자로 구성되어 있다
def solution(str1, str2):
if str2 in str1 :
return 1
else:
return 2
str1 = ('apple bear cream')
str2 = ('bear')
print(solution(str1, str2))
# * 문제 5에서 썼던 char을 썼더니 한 글자만 포함되어있어도 있다고 나오니,
# str1 을 통째로 비교해야 한다!
오늘 배운 것
arr = range(10)
arr
[0,1,2,3,4,5,6,7,8,9]
arr[::2] # 처음부터 끝까지 두 칸 간격으로
[0,2,4,6,8]
arr[1::2] # index 1 부터 끝까지 두 칸 간격으로
[1,3,5,7,9]
arr[::-1] # 처음부터 끝까지 -1칸 간격으로 ( == 역순으로)
[9,8,7,6,5,4,3,2,1,0]
arr[::-2] # 처음부터 끝까지 -2칸 간격으로 ( == 역순, 두 칸 간격으로)
[9,7,5,3,1]
arr[3::-1] # index 3 부터 끝까지 -1칸 간격으로 ( == 역순으로)
[3,2,1,0]
arr[1:6:2] # index 1 부터 index 6 까지 두 칸 간격으로
[1,3,5]
replace('바꿀문자열', '새문자열')
문자열 안의 문자열을 다른 문자열로 바꿀 수 있다.
단 문자열 자체는 변경하지 않으며 바뀐 결과를 반환한다
때문에 바뀔 결과를 유지하려면
my_string = my_string.replace('바꿀 문자열', '새 문자열')
을 입력해 주어야 함
if char not in eng => not in은 여기에 없다면~