프로그래밍

[문제 풀이] Programmers - 문자열 반복해서 출력하기

1학년 2024. 5. 10. 22:56

Python이라는 언어를 공부하기 시작했다. 

원래 C를 공부하다가 Python이 궁금해져서 공부를 시작하게 됐는데

책으로 하나하나 공부하는 방법이 아니라 문제를 풀면서 익히는 식으로 해보기로 마음을 먹었다. (해보다가 중간에 너무 막힌다 싶으면 책을 보긴하겠지만..) 지식이 전무한 상태에서 시작하는거라 잘될지는 모르겠지만 매일 꾸준히 문제를 풀면서 익혀보기로 했다.

 

 

처음에 for문을 사용해야겠지 싶어서 python for문 문법도 모르는 상태로 작성해보다 에러로 맞고 정신차리고 

문자열 관련해서 검색 좀 해보고 풀었다.

기본적으로 문제에서 주어진 문장을 활용해서 문제를 풀어보는 주의라

제공된 1번째 줄에서 strip(),split()이 어떤 기능을 하는지 몰라서 이것들부터 검색을 먼저 해보았다.

 

> strip()은 ()안에 있는 것을 제거해주는 함수이다. 아무것도 작성이 되어있지 않다면 공백을 제거해준다.

제거한 후 '복사본'을 돌려준다.

형식 - 문자열.strip()

ex)str = 'Hello'

str.strip('e')

결과 - Hllo 

 

> split()는 문자열을 쪼개주는 함수이다. 

형식 - 문자열.split(구분자,분할횟수)

문자열을 구분자를 기준으로 분할횟수만큼 쪼개서 리스트로 만들어주는 역할을 한다.

- 구분자(seq) : 구분자에 값이 없다면 기본적으로 띄어쓰기와 엔터를 기준으로 쪼갠다.

만약 값이 있다면 

ex) str= 'He,llo'

a,b=str.split(',')

결과 - a = He / b = llo

 

- 분할횟수(maxsplit) : 분할횟수에 작성된만큼 쪼개준다.

문자열.split(2) -> 이런식으로는 안된다. 구분자가 없는 상태에서 두개로 쪼개고 싶다면

문자열.split(maxsplit=2) 이런식으로 작성한다.

구분자가 있다면 maxsplit는 생략할 수 있다.

문자열.split(':',2)

 

> 문자열 연산

문자열 곱셈이 가능해서 문자열 * 횟수 하면 출력하고 싶은 횟수만큼 결과가 출력된다. 

문자열에서 덧셈도 가능하다. print(str + str2) 이런식으로 작성하면 두개의 문자열이 붙여져서 나온다. 

 

아무것도 모르는 상태에서 시작해서인지 한문제 한문제 오래 걸리지만 나름 재미있다.