ssoL2 TISTORY

[기초 PYTHON 프로그래밍] 4강. 문자열 자료형 본문

com/python

[기초 PYTHON 프로그래밍] 4강. 문자열 자료형

ssoL2 2020. 12. 24. 02:00

-문자열 객체

1. 홑따옴표 1개

2. 쌍따옴표 1개

3. 홑따옴표 3개

4. 쌍따옴표 3개

 

- 홑, 쌍따옴표 1개로 사용할 때 역슬래쉬(\)로 문자열 연결함(엔터할 시)

 

- 만약 문자열 내 1,2번이 들어갔으면 나머지 3개로 사용함

ex) a = "say 'hello' to mom"

     a = """say 'hello' to mom"""

     a = '''say 'hello' to mom'''

 

- 홑, 쌍따옴표 3개 사용할 때 엔터 안쳐도 그 자체로 문구를 인식함 ㄱㅊ음

 

- 문자열 객체는 수치형 같이 immutable하다.

- 순서가 있는 자료형으로 인덱싱 이용

 

인덱스(0부터 시작), 음수 인덱스(뒤에서 -1부터 시작)

 

print(greeting[n])

n번째 인덱스 출력 #ex) n=7 => o 출력

greeting[0] = 'H' #TypeError 발생

문자열 객체는 immutable하기 때문에 생성된 후에 수정할 수 없다!!!!

 

- 문자열 슬라이싱 : 범위를 이용하여 문자열 일부분에 접근

 

문자열 슬라이싱 / lang[a:b]일 때 a<b는 수치적인 것이 아닌 인덱스 방향이 왼쪽에서 오른쪽으로 가야 한다는 말이다. ex) 밑에서의 lang[5:-8]도 된다! 왜냐면 왼쪽에서 오른쪽으로 가는 방향이기 때문이다.

 

lang[] 예시 / lang[10:5]나 lang[-10:-13]이 안되는 이유는 앞서 말했듯이 왼쪽에서 오른쪽 방향이 아니라 반대 방향이기 때문이다. 반드시 왼->오 방향이어야 한다. [a:b]인 경우에는!

 

- 문자열 연결하기 (+)

그러나 타입에 맞춰서 해야함 ex) 숫자형 + 문자형이면 둘 중 하나로 통일

a = 'hello'

b = 'world'

c = a + b

print(c) #helloworld 출력


- 문자열 반복하기 (*)

a = 'hello'

a * 3 #'hellohellohello' 의미


- 문자열 길이는 len() 내장함수 이용

subject = 'programming'

len(subject) #11 의미

 

- 문자열 포함 유무확인은 in과 not in 연산자 이용

'r' in subject #True 의미

'abcd' not in subject #True 의미

 

- 메소드 : 특정 객체에 어떤 일을 처리하도록 하는 코드

- 문자열 객체에서 사용할 수 있는 메소드는 문자열.메소드() 형태로 사용한다.

dir(str)

문자열 메소드 출력

 

문자열 메소드

 

문자열 메소드 upper() 모두 대문자, lower() 모두 소문자, isupper(), islower() 모두 대소문자 확인

 

문자열 메소드 capitalize() 첫 문자 대문자, title() 문자열 각 단어 첫 문자 대문자, istitle() title 확인

 

문자열 메소드 count() 부분 문자열 개수, find() 부분 문자열 첫 인덱스

 

- 많이 사용하는 메소드 join과 split 중요

문자열 메소드 join(리스트) 리스트 자료를 문자열로 연결, split() 문자열을 쪼개서 리스트에 저장

 

Comments