TigerCow.Door


안녕하세요.

이번 포스팅에서는 문자열과 관련된 함수들에 대해서 알아보도록 하겠습니다.

궁금하신 점은 언제든지 댓글을 남겨주세요 :)


1. 문자 개수 세기 ( count )


문자열에서 특정 문자의 개수를 반환 합니다. "Hello world. I'll study python!" 이라는 문자열에서 알파벳 o 의 개수를 알기 위해서는 다음과 같이 작성하면 됩니다.




2. 문자열 길이 세기 ( len )


특정 문자열의 전체 길이를 반환합니다. "Hello world. I'll study python!" 이라는 문자열의 길이를 알고 싶다면, len("Hello world. I'll study python!") 을 입력하면 됩니다.




3. 위치 알려주기1 ( find )


문자열에서 특정 문자 또는 문자열이 처음으로 나온 위치를 반환합니다. 만약 찾는 문자 또는 문자열이 없는 경우 -1을 반환합니다. "Hello world. I'll study python!"에서 ll의 위치를 알고 싶다면 다음과 같이 입력하면 됩니다.




4. 위치 알려주기2 ( index )


문자열에서 특정 문자 또는 문자열이 처음으로 나온 위치를 반환합니다. 만약 찾는 문자 또는 문자열이 없는 경우 오류를 출력합니다. 앞의 3번, find함수와 다른 점은 찾는 문자 또는 문자열이 없을 경우 -1이 아닌 오류를 출력하는 점 입니다. 사용 예제는 다음과 같습니다.





5. 문자열 삽입 ( join )


문자열의 각각의 문자의 사이에 특정 문자를 삽입합니다.

join함수는 이후에 배울 리스트라는 개념과 함께 쓰일 수 있는 함수입니다. 예를 들어, name = ['John', 'Jane', 'Bro', 'Kai'] 라는 리스트배열이 있을 때 이것을 각각의 이름이 ','로 구분되는 하나의 문자열로 만들고 싶다면 다음과 같이 입력하면 됩니다.




6. 문자열 나누기 ( split )


문자열을 특정 문자를 기준으로 나누어 리스트로 반환합니다.

split함수는 이후에 배울 리스트라는 개념과 함께 쓰일 수 있는 함수입니다. 예를 들어, name='John, Jane, Bro, Kai'라는 문자열이 있을 때 이것을 ','로 구분하여 리스트배열로 만들고 싶다면 다음과 같이 입력하면 됩니다.



다시말해, a.split()은 a라는 문자열을 나누는 것인데, split함수의 괄호가 비어있을 때는 default 값으로 공백을 기준으로 문자열을 나눕니다.



7. 소문자를 대문자로 바꾸기 ( upper )


문자열에서 소문자들을 대문자로 바꾸어서 반환합니다.




8. 대문자를 소문자로 바꾸기 ( lower )


문자열에서 대문자들을 소문자로 바꾸어서 반환합니다.




9. 왼쪽 공백 지우기 ( lstrip )


문자열에서 가장 왼쪽에 있는 한 칸 이상의 연속된 공백들을 모두 지웁니다.




10. 오른쪽 공백 지우기 ( rstrip )


문자열에서 가장 오른쪽에 있는 한 칸 이상의 연속된 공백들을 모두 지웁니다.




11. 양쪽 공백 지우기 ( strip )


문자열에서 양쪽에 있는 한칸 이상의 연속된 공백들을 모두 지웁니다.




12. 문자열 바꾸기 ( replace )


문자열내에서 특정 문자 또는 문자열을 지정된 문자 또는 문자열로 치환하여 반환합니다.

사용 예제는 다음과 같습니다.




13. 문자열 포매팅 ( format )


문자열을 포매팅 하는 방법은 지난 포스팅에서도 학습하였지만, 함수를 이용할 수도 있습니다.


인덱스를 이용해서 하나의 문자를 대입하는 방법은 아래와 같습니다.




인덱스를 이용해서 두개 이상의 문자를 대입하는 방법 또한 유사합니다.




인덱스가 아닌 변수명을 이용해서 문자를 대입하는 방법은 아래와 같습니다.




치환될 문자열이 총 10자리를 갖게하며 문자가 왼쪽, 오른쪽, 가운데 정렬이 되게끔 하는 방법은 다음과 같습니다.





이렇게 해서 문자열에서 사용되는 주요 함수들에 대해서 알아보았습니다.

다음 포스팅부터는 리스트 자료형에 대해서 알아보도록 하겠습니다.


블로그 이미지

Tigercow.Door

Web Programming / Back-end / Database / AI / Algorithm / DeepLearning / etc

댓글을 달아 주세요