ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [파이썬] 특정 문자로 문자열 나누기, 문자열 바꾸기
    Python 2021. 1. 12. 22:55
    반응형

    특정 문자로 문자열 나누기

    str = "동해물과 백두산이 마르고"
    result = str.split()
    print(result)
    
    # ['동해물과', '백두산이', '마르고']

    문자열을 자를 땐 split 메서드를 사용하면 됩니다. 띄어쓰기로 문자열을 나누고 싶을 땐 split그대로 사용하면 되고 ', '나 ':' 등 다양한 문자로 나누고 싶을 땐 해당 문자를 전달해주면 됩니다. 반환 값은 리스트 형식입니다!

     

    str = "동해물과:백두산이:마르고"
    result = str.split(':')
    print(result)
    
    # ['동해물과', '백두산이', '마르고']

     


     

    문자열 바꾸기

    str = 'Hello, world!'
    str[7] = 'k'
    
    # TypeError                                 Traceback (most recent call last)
    # <ipython-input-40-8bebd457364d> in <module>
    #      1 str = 'Hello, world!'
    # ----> 2 str[7] = 'k'
    
    # TypeError: 'str' object does not support item assignment

    위와 같이 문자열의 바꾸고 싶은 부분을 바꾸게 되면 에러가 발생합니다.

     

    만약 바꾸고 싶은 문자를 알고 있는 상태라면 replace() 메서드를 활용할 수 있습니다.

    a = "Life is too short"
    a.replace("Life", "Your leg")
    'Your leg is too short'

     

    그렇지만 바꾸고 싶은 문자는 모르지만 위치를 알고 있는 경우 문자열을 리스트로 변환한 뒤 수정해줘야 합니다.

     

    a = 'Hello, world'
    new = list(a)
    new[1] = 'a'
    ''.join(new)
    
    # 'Hallo, world'

    혹은

     

    a = 'Hello, world'
    b = a[:1] + 'a' + a[2:]
    b
    
    # 'Hallo, world'

    두 방법 모두 생각보다 귀찮은 작업입니다 ㅠ 속도는 두 번째가 더 빠르니 익숙해지는 수밖에 없겠네요

     

     

    반응형

    댓글

Designed by Tistory.