728x90
중간점검 문제
Q ) 사이트별로 주소를 받아 비밀번호를 만들어주는 프로그램을 작성하시오.
단, http:// 는 주소를 입력하면 주소의 앞부분에 반드시 나오도록 합니다.
ex) http://kakaocorp.com, http://naver.com 등
규칙 1 : http:// 부분은 제외 => kakaocorp.com
규칙 2 : 처음 만나는 점(.) 이후 부분은 제외 => kakaocorp
규칙 3 : 남은 글자 중 처음 세 자리 + 글자 개수 + 글자 내 'a' 개수 + "!" 로 구성
ex) 생성된 비밀번호 : kak92!
정답 및 해설
url = "http://" + input()
a = url.replace("http://","")
a = a[:a.index(".")]
password = a[:3] + str(len(a)) + str(a.count("a")) + "!"
print("{0} 의 비밀번호는 {1} 입니다.".format(url, password))
- url 이라는 변수를 생성한 후 그곳에 "http://" + input() 을 넣어줍니다.
http:// 이후에 input()으로 인해 출력값을 집어넣습니다.
출력 결과 : kakaocorp.com 입력 시 http://kakaocorp.com 출력 - a 라는 변수를 생성해 replace를 이용하여 url 변수 내에 http://라는 문장을 찾고 그 문장을 공백으로 바꿔줍니다.
출력 결과 : kakaocorp.com 출력 - 인덱스를 사용하여 기존 a 변수에 처음 값부터 "." 이전의 값까지 만을 다시금 a 에 집어넣어 줍니다.
출력 결과 : kakaocorp 출력 - password 라는 변수를 선언하여 a 변수의 처음 값부터 인덱스 3번째 값 이전까지의 값, len 함수를 통한 a 변수의 길이의 수, count 함수를 통한 a 라는 단어의 개수,! 를 순차적으로 붙여 저장합니다.
len 함수와 count 함수를 str로 형변환 시켜주는 이유는 해당 함수를 사용 시 결과가 정수 값으로 바뀌므로 다시 문자열로 바꿔주어야 오류가 나지 않습니다.
출력 결과 : kak92! - print 함수를 사용하여 ( ) 안의 값들을 출력해줍니다. {0}, {1} 과 같은 것은 문자열 포맷 글(13번)에 설명이 되어있으니 참고 부탁드립니다.
출력 결과 : http://kakaocorp.com 의 비밀번호는 kak92! 입니다.
위의 해설은 kakaocorp.com 가 입력되었다는 기준으로 작성이 되었으며 만일 다른 문장이 입력되거나 함수에 설정한 값들이 바뀜에 따라 달라질 수 있다는 점 유의해주시길 바랍니다.
728x90
'Language > Python' 카테고리의 다른 글
14. 기본부터 다지는 파이썬 - 탈출문자 (0) | 2022.05.16 |
---|---|
13. 기본부터 다지는 파이썬 - 문자열포맷 (0) | 2022.05.13 |
12. 기본부터 다지는 파이썬 - 문자열처리함수(2) (0) | 2022.05.12 |
11. 기본부터 다지는 파이썬 - 문자열처리함수(1) (0) | 2022.05.10 |
10. 기본부터 다지는 파이썬 - 슬라이싱 (0) | 2022.05.09 |