본문 바로가기
[Programmers]

[프로그래머스 Lv.0][Python] 영어가 싫어요

by Sir교수 2023. 1. 21.
728x90

https://school.programmers.co.kr/learn/courses/30/lessons/120894

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

▶문제 설명

 

▶나의 풀이

 

def solution(numbers):
    answer = 0
    numbers_int = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
    for idx, num_s in enumerate(numbers_int):
        numbers = numbers.replace(num_s, str(idx))
    return int(numbers)

 

▶나의 풀이 방법 설명

 

numbers_int = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
--> 해당하는 리스트를 만든다

for idx, num_s in enumerate(numbers_int):
        numbers = numbers.replace(num_s, str(idx))
--> enumerate 함수를 이용해서 0~9의 인덱스와 문자열 각각 출력
numbers = numbers.replace(num_s, str(idx))
--> replace 함수를 이용, num_s에 해당하는 인덱스로 replace

 

※ 사용된 문법

 

1. enumerate() 함수:

# 예시 
example_list = ['하나', '둘', '셋']
for i, value in enumerate(example_list):
    print(i, value)

>>  0, '하나'
    1, '둘'
    2, '셋' 

2. replace() 함수:
기존 문자열에서의 문자를 원하는 다른 단어로 변경할 때 사용
replace("바꾸고 싶은 문자" , "바꾸려는 내용의 문자", 횟수)
728x90