(python)문자열 압축
2022. 6. 8. 00:30ㆍ개발자 과정/python
일단 파이썬을 배우기 시작한지 얼마 안되었다...현재 기준 일주일도 안되었는데...
그래서 코드 퀄리티에 자신이 없다ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
아무튼 책을 보면서 문법익히는 기초문제까지 블로그에 올려야 하는 건가 고민이 있었다.
그러던 와중 문자열 압축은 어디선가 단골문제라는 것을 얼핏 듣고 한 번 올려본다.
def zipStr(string)://문자열을 받는다//
lapf=0//같은 문자의 개수를 세는 변수//
zipsrting=string[0]//압축된 문자열을 저장할 변수//
same=string[0]//앞전 문자를 저장하는 변수//
for i in string:
if same != i:
//same을 반복문 끝에 배치해 i와 앞전 문자를 비교하도록 했다.//
//둘이 같지 않으면 다른 문자로 바뀐 것이니 그때 코드에 돌입한다.//
zipsrting+=str(lapf)
//조건문에 해당이 없으면 카운트가 올라가는데 코드에 돌입하면 카운트된
변수 부터 넣는다. 왜냐면 처음 코드진입기준 i='b'이고, zipstring은
문자열의 제일 처음 문자를 가지고 있다.//
zipsrting+=i//그 다음 바뀐 문자를 넣고//
lapf=0//카운트는 초기화 시킨다.//
lapf+=1
same=i
zipsrting+=str(lapf)//반복문이 끝나면 제일 끝에 있는 문자의 카운트를 넣어준다.//
print(zipsrting)
def main()://main은 아직까진 있어야 맘이 편하다//
x="aaabbcccccca"
zipStr(x)
main()
python을 배우면서 느낀 점은..."뭐야 그럴거면 그냥 자료형 내가 지정하게 해줘요" 였다.
c언어로 시작을 해서 그런가...함수를 사용하면 알아서 잘라주고 붙여주고 넣어주고 하는건 편리하긴 하다만,
더욱 직관적으로 보이는게 아직까진 더 쉽고 편하다. 그래도 명성대로 적응하면 강력한 언어가 될 것 같다.
'개발자 과정 > python' 카테고리의 다른 글
문자열 정규화 로직 개발 (1) | 2024.11.22 |
---|---|
(python)모스 부호 해독 (0) | 2022.06.08 |