파이썬의 자료형 - 문자열 자료형
문자열 포매팅
"지금은 20:50분 입니다"
이렇게 시간을 알려주는 문장을 출력하는 프로그램을 만들었다고 가정하자.
"지금은 20:51분 입니다"
위에 글을 쓰는동안 어느세 1분이 지났다. 그럼 또 문장을 써야한다.
하지만 위의 두 문자열은 모두 같은데 숫자만 다르다. 이렇게 나머지는 같고
특정한 부분만 바뀌는 경우가 있을 때 문자열 포매팅을 사용한다.
- 숫자 바로 대입
문자열 안에 숫자를 넣고 싶은 자리에 %d 를 넣어주고, 삽입할 숫자는 문자열 뒤 % 다음에 넣으면 된다
%d는 문자열 포맷 코드라고 한다
- 문자열 바로 대입
문자열 안에 또다른 문자열을 삽입하기 위해 %s 를 사용했다
숫자를 넣기 위해선 %d, 문자열을 넣기 위해선 %s를 사용한다
또 중요한건 문자열 변수를 정의할 때처럼 따옴표" " 안에 넣어야 한다는 점이다.
- 숫자 값을 나타내는 변수로 대입
숫자를 바로 적어도 좋고 변수로 대체해도 상관없다.
- 2개 이상의 값 넣기
2개 이상의 값을 넣으려면 % 이후 순서대로 콤마( , )로 구분해서 넣어주면 된다.
문자열 포맷 코드
- %s : 문자열 string
- %c : 문자 1개 character
- %d : 정수 integer
- %f : 소수 floating-point
- %o : 8진수 octal number
- %x : 16진수 hexadecimal number
- %% : Literal % (just % character)
문자열 포맷 코드를 지정하는 약자로 %를 쓰다보니깐 문자%를 쓸 수가 없기에
%%를 문자%로 지정한것이다. 이와 비슷한 것으로는 이스케이프 코드가 있다.
이스케이프 코드
- \n : 문자열 안에서 줄바꿈
- \t : 문자열 사이에 탭 간격
- \\ : 문자 \ 를 그대로 표현
- \' : 작은따옴표를 그대로 표현
- \" : 큰따옴표를 그대로 표현
포맷 코드와 숫자 함께 사용하기
포맷 코드는 문자열 안에 어떤 값을 삽입하기위해 사용하지만
숫자와 함께 사용하면 더 유용할 수 있다
- 정렬과 공백
%5d 의 결과물이 " 10"이 되었다. 즉 숫자와 함께 쓰면 공백을 추가 할 수 있다
여기서 주의할 점은 앞의 5는 총 문자의 공간이고, 그 다음에 정의된 수를 넣는다.
%5d의 경우 5자리를 마련하고,
정의된 수 10(2자리)를 우측(양수)으로 정렬한 후 나머지(3자리)를 공백으로 채운다
음수로 사용하면 정렬방향을 반대로 한다
%-5d의 경우 5자리를 마련하고,
정의된 수 10(2자리)을 좌측(음수)으로 정렬한 후 나머지(3자리)를 공백으로 채운다
- 소수점 표현하기
문자열 포매팅에서 소수점을 표현할때 다음과같이 사용한다
%0.3f 의 경우 정의된 수 3.141592의 소수점 아래를 3자리 만큼만 불러온다.
%10.6f의 경우 10자리를 마련하고,
정의된 수 3.141592의 소수점 아래 6자리 만큼만 불러오고(정수부분과 소수점까지 총 8자리)
우측(양수)으로 정렬한 후 나머지(2자리)를 공백으로 채운다
이부분은 직접 해보면서 느껴보는게 좋아서 따로 코드를 넣지는 않았다
꼭 직접 쳐보면서 습득하는것이 좋다