프로그래밍/파이썬(Python)

코드카데미 파이썬(Codecademy Python) 강좌 - 문자열 뒤집기(reverse)

&+&& 2015. 11. 20. 06:30

안녕하세요. 춘삼이의 블로그입니다.

  코드카데미 파이썬(Codecademy Python) 강좌 해설 6번째 시간입니다. 이번 문제는 반복문 챕터의 [연습이 최고를 만든다]에 6번째 문제 [문자열 뒤집기(reverse)] 입니다.

  문자열 txt를 입력값으로 받아 문자열을 거꾸로 출력하도록 하는 함수 reverse를 작성하면 되는 문제입니다.

  - 예 : reverse("abcd") -> 반환값 : "dcba"

  일단 완성된 코드는 아래와 같구요.

1
2
3
4
5
6
7
8
9
10
11
12
13
def reverse(text):              # text를 입력값으로 갖는 reverse 함수 생성
    letters = list(text)        # text를 리스트화하여 letters에 할당
    reversed_letters = ''       # 변환된 문자열을 저장할 reversed_letters 생성 및 초기화
    x = int(len(text)) - 1      # 변수 x에 text의 문자길이-1을 할당
    while x > -1:               # x가 -1보다 클때까지 반복
        reversed_letters += letters[x]  # reversed_letters에 마지막 문자부터 순서대로 추가
        x -= 1                          # x값을 -1씩 감소
    else:
        return reversed_letters         # 반복문 종료 후 reversed_letters 반환
 
text=raw_input("Enter text : "# text의 값을 사용자로부터 입력
            
print reverse(text)             # reverse를 호출하고 결과값을 출력
cs

  - 11열 이하로는 없어도 문제는 패스입니다.

  - 11열 : raw_input은 콘솔상에 질의하고자 하는 문자열을 출력하고 사용자 입력값을 반환하는 함수입니다.

  - 2열 : list(text)로 리스트화한 값을 letters에 저장합니다.

  - 3열 : reverse된 문자열을 저장할 reversed_letters를 빈 문자열로 초기화합니다.

  - 4열 : 변수 x에 text문자열의 길이를 할당합니다.

  - 5-7열 : while 반복문으로 x > -1 보다 클 때까지 반복하여 문자열의 역순으로 reversed_letters에 추가합니다. x는 1회 반복시마다 -1씩 감소합니다.

  - 9열 : 반복문이 종료된 후 reverse가 완료된 문자열 reversed_letters를 반환합니다.