Programming/🐍 Python

[python] 문자열 마스터하기_1 : 포매팅과 연산자, 문자 대체

남남이루 2021. 5. 17. 02:10

1.1 문자열이란

: 문자나 단어등으로 구성된 문자들의 집합이다. int와 배척되는 개념

출력할 때
"Sooo Good, and Yummy"
따옴표로 감싸져서 출력이 된다.
문자 그대로 출력하고 싶을 때는 \ 이스케이프를 앞에 붙여주면 된다.

1.2 이스케이프

\n 줄바꿈
\t 문자열 사이에 탭
\\ 문자 \를 그대로 표현
\' 작은따옴표 '를 그대로 표현
\" 큰따옴표 "를 그대로 표현
\r 줄바꾸고 현재커서를 가장앞으로 이동(캐리지 커서)
\f 줄바꾸고 현재커서를 다음줄로 이동(폼피드)
\a 벨소리(출력시 PC에서 삑-)
\000

1.3 문자열 연결하기 ( + )

>>> Name = "Jude"
>>> Action = "is going to school"
>>> Sentence = Name + Action
>>> print(Sentence)

"Jude is going to school"

각 변수에 들어있는 문자열이 따옴표를 떼고 만나서 붙어버리기

1.4 문자열 반복하기 ( * )

>>> Name = "Jude"
>>> Message = Name * 3
>>> print(Message)

"JudeJudeJude"

* 곱셈뒤에 나오는 숫자만큼 문자열을 반복

1.5 문자열 길이 구하기 (len)

>>> Sentence = "Jude is going to school"
>>> len(Sentence)

23

공백을 포함한 길이를 보여준다

1.6 특정 문자 대체하기 (제거하기)

  1. re 가져와서 정규표현식 사용하기
  2. 내장 메서드인 replace 사용하기
import re
def solution(my_string, letter):
    answer = re.sub(letter,'', my_string)
    return answer
def solution(my_string, letter):
    return my_string.replace(letter, '')

2.1 슬라이싱 활용해서 정보 추출

>>> data = "20210513Seoul"
>>> local = data[8:]
>>> date = data[:8]
>>> print("지역 :", local)
>>> print("날짜 :", date)
지역 :Seoul
날짜 :20210513

2.2 출력 용이하게 하기 (문자열 포매팅)

문자열 포매팅이란, 문자열 안에 어떤 값을 삽입하는 방법.


>>> cnt = 100
>>> fruit = "an Apple"
>>> print("I ate %s, %d times." %(fruit, cnt))

I ate an Apple, 100 times.

문자 나눠줄때는 들어가야할 자리에 %s
숫자 나눠줄때는 들어가야할 자리에 %d
하나만 넣을때는 맨뒤에 재료들(변수) 괄호 안넣어도 되지만,
다수일 때는 , 로 구분해주고 괄호 씌워줘~

%s | 문자열string
%d | 변수이름이나 숫자(정수)
%c | 1개 문자
%f | 부동 소수
%% | `%`문자자체

%%는 예를들면

  "Error is 98"을 써야할때
  >>> print("Error is %d%%" % 98) 
  로 입력해야 오류가 나지 않는다.

2.3 소수 포매팅

소수점 2번째 자리까지 표현

print("%0.2f" %1.00)

소수점 4번째 자리까지 표현

print("%0.4f" %1.0000)

지정한 문자열 외 길어진 문자는 알아서 잘림

2.4 전체 문자열의 길이 포매팅 (정렬과 공백)

예를 들면

' 오른쪽 정렬'
'왼쪽 정렬 '

이런식으로 자리수를 맞추거나 정렬을 맞추고자 할때,
전체 자리수를 %숫자s를 이용할 수 있음
%10s : 10자리 string(문자)열
%10s : 10자리 string(문자)열 왼쪽 정렬
%-10.4f : 10자리 문자자리를 지정해놓고 소수점 4번째 자리까지 표현된 숫자를 왼쪽 정렬
%10.3f : 10자리 문자자리를 지정해놓고 소수점 3번째 자리까지 표현된 숫자를 오른쪽 정렬

2.4 format 함수 이용하기

퀴즈

(출력값)
너는 ?를 사용할줄 아니~ 모르니~.  
저는 '작은따옴표만 사용할 줄 압니다.

답1 : "너는 ?를 사용할줄 아니~ 모르니~.\n저는 '작은따옴표만 사용할 줄 압니다."

답1 : """너는 ?를 사용할줄 아니~ 모르니~.
저는 '작은따옴표만 사용할 줄 압니다."""