본문 바로가기

Programming Language/Python( 파이썬 )

3. 파이썬 포맷팅(formating) / 지정 연산자(=) (format. , f-string)

반응형

 

 

이번 시간에 공부할 내용은 포맷팅(formating)과 지정연산자. 이다.

사실 초보자의 시선에선 그게 그거 같겠지만, 이 내용은 초보자인 내가 봐도 굉장히 유용하게, 효율적으로 쓰일 것 같다는 생각을 하게 만들었다.

크게 세가지 방법으로 나누어서 설명할텐데, 방법의 '과거 -> 현재 -> 미래' 정도로 이해하면 좋을 것 같다.

 

즉, 

1. 과거에 사용했던 방법(%연산자

2. 현재 가장 많이 사용하는 방법(format

3. 앞으로 많이 사용될 방법(f-string)       으로 설명할 것이다.

 

1. %연산자 방법 

 

% 연산자를 이용하여 포맷팅 하는 방법이다.

자세한 방법은 위에 보는 것과 같이,

 

print("내용 %s  내용 %d 내용 %f." % ("string", integer, float)) 

 

%s 자리에는 string(문자열)

%d 자리에는 integer(정수)가,

%f 자리에는 float(소수)가,

 차례대로 들어가 포맷팅을 활용할 수 있다.

 

%연산자의 단점은!!!!!!!!!!!

 포맷팅 안에 들어가는 문자의 을 알고있어야 활용이 가능하다는 것입니다.  

만약 이렇게 

(위 사진 1) %d (integer) 자리에 --------> "서울"(string) 이 들어가면,

(위 사진 2) %f (float) 자리에 --------> "서울"(string) 이 들어가면,

에러가 발생하게 된다.

다시 말하면, 알맞은 자리에 각각의 요소들을 형식에 맞게 넣어줘야 한다는 것이다!!!!!!!!!!!!!!!!!

 

 

2. format 명령어(포맷 명령어) 방법 

 

 

앞서 말했던 format 명령어 활용은 가장 많이 활용되고 있는 방법이다.

위의 % 연산자 활용 방식에 비하면 (비교적) 정말 훨씬 편하다.,,,,

그래봤자 초보자인 나에게는 불편해보이는건 기분 탓인가요,,,

자세한 형식은 밑에 보는 것과 같이, 

print("내용 {}  내용 {} 내용 {}.".format ( 0.00008, 444, "넣고싶은 정보를 입력하세요")) 

format 사진 1과 사진2를 보면 일정한 방식을 정해두고 뒤에 순서대로 입력했다.

훨씬 간편하다. 내용이 바뀔 때마다 자리에 구애받지 않고, 변경해줄 수 있다.

 

 

 

만약, 입력 값의 순서가 바뀌었다면 어떻게 될까?

 

"6의 수도는 대한민국이고, 광역시 개수는 서울개입니다." 

 

와 같은 이상한 문장이 나올 것이다,,,,,,,,,,,,,...,,,,,;

그렇다면, 서울개 를 없애려면 어떻게 해야할까?

이렇게 순서가 잘못 입력된 경우 물론 처음부터 다 입력해줄 수 있겠지만,

 자릿수를 { } 값에 직접 입력해주어 변경할 수도 있다.

 

프로그래밍 언어의 기본 자릿수는 0부터 시작하므로, 

.format 뒤의 자리의 .format( 0 자리, 1자리, 2자리, 3자리,... ~) 이렇게 생각하면 된다.

모든 자릿수가 0이 시작점이므로 초보자라면 꼭 !!!!!!!! 외워두기!!!!!!!!

위의 예제도 입력값에 변화를 준 것이 아닌, 자릿수를 입력하여 '서울개'를 없앴다.

 

위의 다른 예시인 미국 예시도 이렇게 꼬아봤고, 자릿수로 해결해보았다.

 

feat. 지정 연산자 !

또한 입력 값을 미리 변수에 지정하여 이 값 자체를 넣을 수도 있다!

여기서 잠깐 !!! 초보자가 헷갈려하는 부분 !!!!!!! ( 사실 내가 헷갈려서 적는 ,,, ) 

우리가 아는 =의 부등호는 앞으로 이 프로그래밍 언어 안에서는 ==으로 기억하자.

그리고 프로그래밍 언어 안에서 =은 쉽게 말해, 그 변수 안에 집어넣는거라고 생각하자 !!! 

그리고 프로그래밍 =을 지정 연산자 라고 지칭한다. 

 (☆ == 

 댕댕 별표 다섯개)

 

 

 

밑의 예시를 보면 

country = "대한민국" 이라고 적어놓은 것은

country 는 대한민국이라는 뜻이 아니라 !!!!!!

country 값 안에 대한민국을 집어넣어 놓은거라고 생각해야한다. 적어도 파이썬 코딩 할 떄는,,

즉,

country = "대한민국"

name = "서울"

num = 1

값을 이렇게 지정해주어 format 명령어 방식을 사용해줄 수 있다.

 

 

3. f-string 포맷팅 방법 

 

최근 많이 사용되고 있는 방법으로써, 

위에서 배웠던 =을 활용한 방식이다 ( 지정연산자를 활용하는 방법이다 )

 

값을 먼저 지정해주고, 

country = "내용"

name = 777num = 36.5 

print(f"내용 {country}  내용 {name} 내용 {num}.")

이런 형식으로 이용할 수 있는 방식이다.

 

초보자의 입장에서 현재로썬 지정연산자를 이용해서 어려워보일 수 있지만,

 손에 익는다면 앞선 두 방법보다 훨씬 편한 방법이 될거라고 생각한다.

물론, 저 포함 초보자일 수록 '백문이 불여일타' 라는 말처럼,

 익숙해지면 모든 방법이 좋은 방법일테고  직접 쳐보길 부탁드리는 바입니다.

 

 

 

 

반응형