IT/파이썬 & vscode

[파이썬-2] 문자열 처리하기

크몽 '경매하는 개발자' 님의 경매/부동산/IT/사업 채널 2022. 3. 2. 21:04
반응형

[파이썬-2] 문자열 처리하기

반응형

 


1. 문자열 사용방법

  1) 작은따옴표(') 사용하여 문자열 출력

     >>> str = 'hello world'

 

  2) 큰따옴표(") 사용하여 문자열 출력

     >>> str = "hello world"

 

  3) 작은따옴표 3개 (''') 사용하여 문자열 출력

     >>> str = '''hello world'''

 

  4) 큰따옴표 3개 (""") 사용하여 문자열 출력

     >>> str = """hello world"""


2. 이스케이프 코드

코드 설명
\\n 문자열 안에서 줄 바꿈
\\t 문자열 사이에 탭 간격
\\ 문자 \\를 그대로 표현할 때
\\‘ 작은따옴표(‘)를 그대로 표현할 때
\\“ 큰따옴표(“)를 그대로 표현할 때
\\ 줄 바꿔서 이어서 입력 가능

 

  1) 줄바꿈

    >>> print("안녕하세요.\\n반갑습니다.")

    결과 : 안녕하세요.

             반갑습니다.

 

  2) 탭간격

    >>> print("안녕하세요.\\t반갑습니다.")

    결과 : 안녕하세요.     반갑습니다.

 

   3) 백슬래시(\\) 출력

     >>> str = "\\5000원"

    결과 : \\5000원

 

  4) 작은따옴표(') 출력

     >>> str = "He\\'s world"

    결과 : He's World

 

  5) 큰따옴표(") 출력

     >>> str = "\\"Hi !\\""

    결과 : "Hi !"

 

  6) 줄바꿔서 이어서 입력 가능

    >>> print("안녕하세요. \\

           반갑습니다.")

    결과 : 안녕하세요. 반갑습니다.

반응형

 


3. 문자열 연산

>>> a = 'abc'

>>> b = 'def'

>>> a+b

  결과 : abcdef

>>> a * 2

  결과 : abcabc

 


4. 문자열 인덱싱

  - 인덱싱 : 특정 문자열 가리키기

  - 슬라이싱 : 문자열 나누기

 


>>> str = ‘Hello world’

 

str은 총 10개의 문자를 가지고있는 문자의 배열 즉, 문자열이다.

H e l l o   w o r l d
0 1 2 3 4 5 6 7 8 9 10

 

인덱싱 예)

>>> str[0]

'H'

>>> str[10]

'd'

>>> str[-1]

'd'

- 뒤부터 읽기(뒤부터 읽을 때 첫 글자는 -0번이 아니고 -1번이다.)

>>> str[-3]

'r'

>>> str[0:5]

'Hello'

>>> str[0:3]

'Hel'

>>> str[:]

'Hello World'

>>> str[6:]

'World'

>>> str[:6]

'Hello '

>>> str[6:-1]

'world'

- 뒤부터 읽기(뒤부터 읽을 때 첫 글자는 -0번이 아니고 -1번이다.)

>>> str[6:-2]

'worl'

>>> str[6:-3]

'wor'

>>> str[6:-4]

'wo'

>>> str[6:-5]

'w'

>>> str[6:-6]

''

반응형

 


5. 문자열 포매팅 출력

 

문자열 포맷 코드

포맷 코드 설명
%d 정수(Integer)
%f 부동 소수(float)
%c 문자(Character)
%s 문자열(String)
%o 8진수
%x 16진수
%% 문자 '%

 

>>> print("짜장면 한 그릇에 %d원 입니다." %4000)

'짜장면 한 그릇에 4000원 입니다.‘

>>> value = 4500

>>> print("짬뽕 한 그릇에 %d원 입니다." %value)

'짬뽕 한 그릇에 4500원 입니다.'

>>> print("원주율은 %f......입니다." %3.141592)

'원주율은 3.141592......입니다.'

>>> print("짜장면과 짬뽕의 가격은 각각 %d원과 %d원입니다." %(4000,4500))

'짜장면과 짬뽕의 가격은 각각 4000원과 4500원입니다.'

>>> print("짜장면 한 그릇에 %s원 입니다." %4000)

'짜장면 한 그릇에 4000원 입니다.'

>>> print("원주율은 %s......입니다." %3.141592)

'원주율은 3.141592......입니다.'

>>> print("프로젝트 완료까지 %d%% 남았습니다." %20)

 - 문자 '%' 출력하고 싶으면 앞에 %하나 더 입력

'프로젝트 완료까지 20% 남았습니다.'

 

 

★ 더 편하게 쓰는 방법

 - 파이썬은 자료형을 자동으로 찾아간다. 굳이 명시적으로 포매팅이 필요없다.

 - 자리수, 좌/우로 정렬, 부호 표시 등 명시적으로 포매팅이 필요한 경우에만 사용할 것.

>>> value = 4500

>>> print(f"짬뽕 한 그릇에 {value}원 입니다.")

'짬뽕 한 그릇에 4500원 입니다.'

또는 

 

>>> print("짬뽕 한 그릇에 ", value)

>>> print("원 입니다.")

'짬뽕 한 그릇에 4500원 입니다.'

 

반응형

 


6. 문자열 관련 함수

1) 문자길이 세기 (len)

>>> len(str)

11

- str이 11글자라는 뜻

 

2) 특정문자 개수세기 (count)

>>> str = "happy"

>>> str.count('a') 

1

- 글자 'a'가 1개 들어있다는 뜻

 

3) 특정문자 위치 알려주기 (find, index)

>>> str = "happy"

>>> str.find('y')

4

- 글자 'y'가 5번째에 위치하고 있다는 뜻 (첫 글자가 0번이므로)

 

>>> str.find('b')

-1

- 글자 'b'가 없다는 뜻 (NULL = -1이므로)

 

>>> str.index('h')

0

- 글자 'h'가 1번째에 위치하고 있다는 뜻 (첫 글자가 0번이므로)

 

>>> str.index('z')

Traceback (most recent call last):

File "<pyshell#21>", line 1, in <module>

a.index('z')

ValueError: substring not found

- 글자 'z'가 없다는 뜻

 

4) 문자열 삽입 (join)

>>> a = ""

>>> a.join('1234')

'1234'

>>> a = ","

>>> a.join('123456')

'1,2,3,4,5,6'

>>> a = ", "

>>> a.join('123456789')

'1, 2, 3, 4, 5, 6, 7, 8, 9'

반응형

 

 

5) 문자열 나누기 (split)

>>> a = "He's reading a book."

>>> a.split()

["He's", 'reading', 'a', 'book.']

- 공백(space)을 기준으로 나누기

 

>>> a = "02-1234-5678"

>>> a.split(-)

SyntaxError: invalid syntax

>>> a.split('-')

['02', '1234', '5678']

- 기호(-)를 기준으로 나누기 (작은따옴표 안쓰면 에러남)

 

6) 문자열 추가하기 (append)

>>> new_str = []

>>> new_str.append('hello')

>>> new_str.append('world')

>>> new_str = ' '.join(new_str)

'hello world'

 

※ 기타 문자열 함수 정리

함수 설명
count() 문자 개수 세기
find() 문자 위치 알려주기
index() 문자 위치 알려주기
join() 문자열 삽입
upper() 소문자를 대문자로 바꾸기
lower() 대문자를 소문자로 바꾸기
lstrip() 왼쪽 공백 지우기
rstrip() 오른쪽 공백 지우기
strip() 양쪽 공백 지우기
replace() 문자열 바꾸기
split() 문자열 나누기
반응형

 

반응형