자료형(문자열)

SANGKU OH·2020년 7월 2일
post-thumbnail

string!

문자열(String)이란 문자, 단어 등으로 구성된 문자들의 집합을 의미한다.
예를 들어 다음과 같은 것들이 문자열이다.

위 문자열 예문을 보면 모두 큰따옴표(" ")로 둘러싸여 있다.
"123은 숫자인데 왜 문자열이지?"라는 의문이 생길 수 있다!
⚡️따옴표료 둘러싸여 있으면 모두 문자열이라고 보면 된다!

string은 어떻게 만들고 사용할까?

방법은 총 4가지가 있다!

1. 큰따옴표(")로 양쪽 둘러싸기

2. 작은따옴표(')로 양쪽 둘러싸기

3. 큰따옴표 3개를 연속(""")으로 써서 양쪽 둘러싸기

4. 작은따옴표 3개를 연속(''')으로 써서 양쪽 둘러싸기

왜 방법이 4가지나 가지게 되었을까??

string 안에 작은 따옴표나 큰따옴표를 포함시키고 싶을 때

문자열을 만들어 주는 주인공은 작은따옴표(')와 큰따옴표(")이다.
그런데 문자열 안에도 작은따옴표와 큰따옴표가 들어 있어야 할 경우가 있다. 이때는 좀 더 특별한 기술이 필요하다.

1. 문자열에 작은따옴표(')포함시키기

이런 경우에는 위와 같이 문자열을 큰따옴표(")로 둘러싸야 한다!

2. 문자열에 큰따옴표(")포함시키기

이렇게 작은따옴표(')안에 사용된 큰따옴표(")는 문자열을 만드는 기호로 인식되지 않는다.

3. 백슬래시()를 사용해서 작은따옴표(')와 큰따옴표(")를 문자열에 포함시키기

백슬래시()를 작은따옴표(')나 큰따옴표(") 앞에 삽입하면 백슬래시() 뒤의 작은따옴표(')나 큰따옴표(")는 문자열을 둘러싸는 기호의 의미가 아니라 문자 ('), (") 그 자체를 뜻하게 된다.

여러 줄인 문자열을 변수에 대입하고 싶을 때

1. 줄을 바꾸기 위한 이스케이프 코드 \n 삽입

가능하지만 보기 불편하다!

2. 연속된 작은따옴표 3개(''')또는 큰따옴표 3개(""")사용하기

1번의 단점을 극복하기 위해 사용하자

⚡️이스케이프 코드?

string 연산하기

파이썬에서는 문자열을 더하거나 곱할 수 있다. 다른 언어에서는 쉽게 찾아볼 수 없는 재미있는 기능으로, 우리 생각을 그대로 반영해 주는 파이썬만의 장점이라고 할 수 있다. 문자열을 더하거나 곱하는 방법에 대해 알아보자.

1. string +

2. string *

3. len(string)

string 인덱싱

pyhthon은 0부터 숫자를 센다!

하지만 마이너스(-)를 활용하면 뒤에서부터 숫자를 센다!

string 슬라이싱

a[0:4]가 뜻하는 것은 a 문자열, 즉 "Life is too short" 문장에서 자리 번호 0부터 4까지의 문자를 뽑아낸다는 뜻이다. 하지만 다음과 같은 의문이 생길 것이다.
"a[0]은 L, a[1]은 i, a[2]는 f, a[3]은 e니까 a[0:3]으로도 Life라는 단어를 뽑아낼 수 있지 않을까?"

⚡️슬라이싱 기법으로 a[시작 번호:끝 번호]를 지정할 때 끝 번호에 해당하는 것은 포함하지 않기 때문이다.

1. a[시작 번호:끝 번호]에서 끝 번호 부분을 생략하면 시작 번호부터 그 문자열의 끝까지 뽑아낸다!

2. a[시작 번호:끝 번호]에서 시작 번호와 끝 번호를 생략하면 문자열의 처음부터 끝까지를 뽑아낸다!

3. 슬라이싱에서도 인덱싱과 마찬가지로 마이너스(-) 기호를 사용할 수 있다!

string 함수!

1. string 개수 세기!(count)


문자열 중 문자의 b의 개수를 돌려준다!

2. string 위치 알려주기(find)


문자열 중 문자b가 처음으로 나오는 위치를 반환한다.
만약 찾는 문자나 문자열이 존재하지 않는다면 -1를 반환한다.

3. string 삽입(join)


abcd 문자열의 각각의 문자 사이에 ','를 삽입한다.
⚡️ join 함수는 striong 뿐만 아니라 list, tuple 입력으로 사용할 수 있다!

4. string 대문자변환(upper)


만약 문자열이 이미 대문자라면 아무 변화도 일어나지 않는다!

5. string 소문변환(lower)

6. string 공백 지우기(strip)


문자열 양쪽에 있는 한 칸 이상의 연속된 공백을 모두 지운다.
⚡️왼쪽에 있는 공백만 지우고 싶다면 lstrip,오른쪽에 있는 공백만 지우고 싶다면 rstrip을 사용하자!

7. string 바꾸기(replace)


eplace(바뀌게 될 문자열, 바꿀 문자열)처럼 사용해서 문자열 안의 특정한 값을 다른 값으로 치환해 준다.

8. string 나누기(split)


split 함수는 a.split()처럼 괄호 안에 아무 값도 넣어 주지 않으면 공백(스페이스, 탭, 엔터 등)을 기준으로 문자열을 나누어 준다. 만약 b.split(':')처럼 괄호 안에 특정 값이 있을 경우에는 괄호 안의 값을 구분자로 해서 문자열을 나누어 준다. 이렇게 나눈 값은 리스트에 하나씩 들어가게 된다.

(rel:https://wikidocs.net/13)

profile
Prof.Google을 통해 필요한 정보를 이 곳에 insert 🐸

0개의 댓글