[파이썬] 300제 혼자 풀기 (21-30)

반응형
    반응형

    021 ~ 030 - 초보자를 위한 파이썬 300제 (wikidocs.net)

     

    021 ~ 030

    .answer {margin-top: 10px;margin-bottom: 50px;padding-top: 10px;border-top: 3px solid LightGray;bo…

    wikidocs.net

     

    021 문자열 인덱싱

    letters가 바인딩하는 문자열에서 첫번째와 세번째 문자를 출력하세요.

    >> letters = 'python'
    
    실행 예
    p t

     

    [정답]

    letters = 'python'
    print(letters[0])
    print(letters[2])

     

    022 문자열 슬라이싱

    자동차 번호가 다음과 같을 때 뒤에 4자리만 출력하세요.

    license_plate = "24가 2210"
    실행 예: 2210

     

     

    [정답] 

    print(license_plate[4:8])
    print(license_plate[-4:])

     

    023 문자열 인덱싱

    아래의 문자열에서 '홀' 만 출력하세요.

    >> string = "홀짝홀짝홀짝"
    
    실행 예:
    홀홀홀

     

     

    [정답]

    string = "홀짝홀짝홀짝"
    print(string[::2])

    슬라이싱할 때 `시작인덱스:끝인덱스:오프셋`을 지정할 수 있습니다. 여기서 시작 인덱스와 종료 인덱스가 생략되어 있어, 전체 문자열이 대상이 됩니다. 오프셋 값이 2이므로, 이 코드는 문자열의 각 두 번째 문자를 선택합니다.

    만약, 오프셋 값이 1이라면 <홀짝홀짝홀짝>이 출력되며, 오프셋 값이 3이라면 <홀짝>이 출력됩니다. 

     

    024 문자열 슬라이싱

    문자열을 거꾸로 뒤집어 출력하세요.

    >> string = "PYTHON"
    
    Copy실행 예:
    NOHTYP

     

    [정답]

    string = "PYTHON"

    print(string[::-1])

     

    025 문자열 치환

    아래의 전화번호에서 하이푼 ('-')을 제거하고 출력하세요.

    >> phone_number = "010-1111-2222"
    
    실행 예
    010 1111 2222

     

    [정답]

    phone_number = "010-1111-2222"
    phone_number.replace("-"," ")

     

    파이썬 문자열에서 replace 메서드를 사용하면 문자열을 일부를 치환할 수 있습니다. 문자열은 수정할 수 없는 자료형이므로 기존 문자열은 그대로 두고 치환된 새로운 문자열이 리턴됩니다.

     

    026 문자열 다루기

    25번 문제의 전화번호를 아래와 같이 모두 붙여 출력하세요.

    실행 예
    01011112222

     

    [정답]

    phone_number = "010-1111-2222"
    phone_number.replace("-","")

     

    027 문자열 다루기

    url 에 저장된 웹 페이지 주소에서 도메인을 출력하세요.

    >> url = "http://sharebook.kr"
    
    실행 예:
    kr

     

     

    [정답]

    url = "http://sharebook.kr"

    print(url[-2:])

     

    url_split = url.split('.')
    print(url_split[-1])

    문자열로 표현된 url에서 `.`을 기준으로 분리합니다. 분리된 url 중 마지막을 인덱싱하면 도메인만 출력할 수 있습니다.

     

    028 문자열은 immutable

    아래 코드의 실행 결과를 예상해보세요.

    Copy>> lang = 'python'
    >> lang[0] = 'P'
    >> print(lang)

     

    [정답]

    TypeError                                 Traceback (most recent call last)
    Cell In[55], line 2
          1 lang = 'python'
    ----> 2 lang[0] = 'P'
          3 print(lang)
    
    TypeError: 'str' object does not support item assignment

     

    029 replace 메서드

    아래 문자열에서 소문자 'a'를 대문자 'A'로 변경하세요.

    >> string = 'abcdfe2a354a32a'
    Copy실행 예:
    Abcdfe2A354A32A

     

    [정답] 

    string = 'abcdfe2a354a32a'

    string1 = string.replace("a", "A")

    print(string1)

     

    030 replace 메서드

    아래 코드의 실행 결과를 예상해보세요.

    string = 'abcd'
    string.replace('b', 'B')
    print(string)

     

    [정답] 

    abcd

    `abcd`가 그대로 출력됩니다. 왜냐하면 문자열은 변경할 수 없는 자료형이기 때문입니다. replace 메서드를 사용하면 원본은 그대로 둔채로 변경된 새로운 문자열 객체를 리턴해줍니다.

    반응형

    댓글

    Designed by JB FACTORY