(2일차) 초보자를 위한 파이썬 300제[21~30]

져니·2021년 7월 8일
0
post-thumbnail

021 문자열 인덱싱

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

letters = 'python'
실행 예
p t

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

파이썬에서는 문자가 하나하나의 배열이 된다

022 문자열 슬라이싱

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

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

=>
license_plate ="24가 2210"
print(license_plate[-4:])

  • 파이썬 slicing
    license_plate[start : end : step] => 각각 start, end, step 모두 양수와 음수를 가질 수 있습니다.
    start: 슬라이싱 시작위치
    end: 슬라이싱을 끝낼 위치, end는 포함하지 않음, 즉 [:4] => 0123만 결과 나옴
    step: stride(보폭)라고도 하며 몇개씩 끊어서 가져올지와 방향을 정합니다.(옵션값)
    2 /4 /가 /2 /2 /1 /0
    0 /1 /2 /3 /4 /5 /6
    -7/-6/-5/-4/-3/-2/-1

    1) 특정 시작위치부터 끝까지 가져오기 => license_plate[ start : ]
    2) 시작점부터 특정 위치까지 가져오기 => license_plate[ : end ]
    3) 특정 위치부터 특정 위치까지 모두 가져오기 => license_plate[ start : end ]
    4) 양수 step : 오른쪽으로 step만큼 이동하면서 가져옴
    5) 음수 step: 왼쪽으로 step만큼 이동하면서 가져옴.

023 문자열 인덱싱

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

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

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

024 문자열 슬라이싱

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

string = "PYTHON"
실행 예:
NOHTYP

=>
STRING="PYTHON"
print(STRING[::-1])

025 문자열 치환

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

phone_number = "010-1111-2222"
실행 예
010 1111 2222
=>
phone_number = "010-1111-2222"
print(phone_number.replace("-"," "))

  • replace함수
    => 문자열.replace("찾을값", "바꿀값", [바꿀횟수])

026 문자열 다루기

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

실행 예
01011112222

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

027 문자열 다루기

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

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

=>
url = "http://sharebook.kr"
print(url.split('.')[-1])

  • split 함수
    => 문자열.split('구분자', 분할횟수)

028 문자열은 immutable

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

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

문자열은 수정 불가능, 실행 결과를 확인해보면 문자열이 할당(assignment) 메서드를 지원하지 않음을 알 수 있습니다.

029 replace 메서드

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

string = 'abcdfe2a354a32a'
실행 예:
Abcdfe2A354A32A

=>
example='abcdfe2a354a32a'
print(example.replace('a','A'))

030 replace 메서드

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

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

문자열은 변경할 수 없는 자료형이기 때문에 결과값이 변하지 않음
replace 메서드를 사용하면 원본은 그대로 둔채로 변경된 새로운 문자열 객체를 리턴해주고, 이를 새로운 변수에 담아서 저장해야함
string = 'abcd'
string2=string.replace('b', 'B')
print(string2)
이렇게 바꾸면 결과값이 aBcd로 잘 나옴

profile
성실함은 최고의 무기

0개의 댓글