파이썬 문자열 순서바꾸기

조회수 1118회

제가 만들어본 코드입니다.

def 자리바꾸기(a):
    b = ''
    for i in range (0, len(a)-1,2):
        b += a[i+1] + a[i]
    return b

인데 여기서 '1234567'의 자리를 바꾸면 563412가 나오면서 마지막자리가 없어지는 문제가 있습니다. 마지막자리까지 출력하고 싶은데 방법이 없을까요?

1 답변

  • >>> def f(a):
        b = ''
        for i in range(0, len(a)-1, 2):
            b += a[i+1]+a[i]
        return b
    
    >>> f("1234567")
    '214365'
    >>> def f(a):
        b = ''
        for i in range(0, len(a)-1, 2):
            b = a[i+1]+a[i]+b
        return b
    
    >>> f("1234567")
    '654321'
    >>> def f(a):
        b = ''
        for i in range(0, len(a)-1, 2):
            b = a[i]+a[i+1]+b
        return b
    
    >>> f("1234567")
    '563412'
    >>> def f(a):
        b = ''
        for i in range(0, len(a)+1, 2):
            b = a[i:i+2]+b
        return b
    
    >>> f("1234567")
    '7563412'
    >>> 
    

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)