■ 포맷팅
지금까지 출력하는 것들은 간단한 형태로 출력을 해왔습니다. 하지만 사용자로부터 값을 입력받고 그 값을 연산한 뒤 다시 값을 출력할 때, 단순한 형태로는 나타낼 수 없습니다. 따라서 자료형을 연결해주어야한다. 연결하는 방법은 + 연산자를 이용해서 쉽게 연결을 해서 출력이 가능하지만 중간중간에 문자열이 아닌 값을 문자열로 바꿔주는 비효율적인 과정이 생깁니다. ( " " 를 끊어주는 또는 str함수 같이 만들어주는 것들 ) 따라서 저희는 한번에 작성을 할 수 있는 포맷팅에 대해서 알아보도록 하겠습니다.
포맷팅 방법은 문자열 사이사이에 다른 정보를 삽입하여 조립하는 기법을 말합니다. 문자열에 표식을 넣고 변수를 밝히면 표식자리에 정보가 삽입이 되고, 중간에 끊지않고, 쉽게 작성을 할 수 있습니다. 이 방법은 정보 사이에 공백이 들어가고 출력만 할 뿐 하나의 문자열을 만들어 내는 것은 아닙니다. 따라서 문자열 사이사이에 다른 저보를 삽입하여 조립하는 기법입니다.
표식의 종류
표식 | 설명 |
%d | 정수 |
%f | 실수 |
%s | 문자열 |
%c | 문자 하나 |
%h | 16진수 |
%o | 8진수 |
%% | % 문자 |
생년월일 작성 | |
year=1998 month=1 day=1 print("제 생년월일은 %d년 %d월 %d일 입니다" %(year,month,day)) |
|
result |
제 생년월일은 1998년 1월 1일 입니다 |
※ 표식에서 %뒤에 숫자를 넣으면 얼마만큼의 폭을 지정할 수 있습니다. 보기 좋게 정렬을 할 수 있게 활용을 할 수 있습니다. 그리고 %숫자 뒤에 " . + 숫자2 " 를 하면 숫자2만큼의 소수점 이하의 자릿수를 나타냅니다. 따라서 긴 연산을 한 경우에는 %10.2d 라던지 적절하게 유효숫자를 끊으면서 활용을 할 수 있을 것 같습니다.
■ Advanced 포맷팅
python 2.6 이후부터 가능한 포맷팅 방법인데 간단하게 기능을 알아보고 넘어가도록 하겠습니다.
정보를 삽입할 위치에 { } 를 적고, format method의 인수로 삽입할 변수를 나열합니다.
개인신상 입력 | |
nam="pyh" ag="30" print("name : {0}, age : {1}".format(nam,ag)) |
|
result |
name : pyh, age : 30 |
※ 추가적으로 { } 안에 기존의 " . + 숫자2 " 처럼 활용할 수 있는 기능이 많이 있습니다. 이 기능들은 다음에 다루도록 하겠습니다.
'컴퓨터 프로그래밍 > python' 카테고리의 다른 글
Python 사전(Dictionary)과 집합(Set) (0) | 2020.08.12 |
---|---|
Python 리스트(list) & 튜플(tuple) (0) | 2020.08.12 |
Python 문자열 관리(String management) (0) | 2020.08.12 |
python 산술(Arithmetic) (0) | 2020.08.12 |
Python 함수(function) (0) | 2020.08.11 |
댓글