ABOUT ME

-

Today
-
Yesterday
-
Total
-
s0ye0ve
  • [PYTHON] 파이썬 print 함수 문자랑 변수 한꺼번에 출력하기
    Programming/파이썬 2022-12-13
    728x90

    파이썬 코딩을 하다보면 프린트 함수를 통해 중간중간 값을 확인해 주는 것이 좋은데, 그래야 나중에 다 코딩하고서 오류가 난무하는 것을 막을 수 있다. 이번 글에서는 문자와 변수를 한 줄에 한꺼번에 출력하는 방법을 다루려고 한다.

     

    사실 파이썬은 c언어보다는 사용하기가 더 직관적인 언어라 문자와 변수를 섞어서 출력하는 것은 어렵지 않다.

     

    a = 100
    b = 200
    
    print('number a b :', a, b)

     

    그냥 이런 식으로 문자는 따옴표로 묶고 콤마(,)를 통해 변수를 구분해주면 되기 때문이다.

     

    위 코드의 결과값은 이렇게 나온다.

     

    이것만 써도 충분하기는 하지만, 다른 방법도 알아두면 좋다.


     

    0. 변수 여러 개 출력 시, 콤마(,)와 더하기(+)

    먼저 위 코드를 잘 보면 print(a, b) 형식으로 변수를 콤마(,)를 사용하여 구분해준 것을 볼 수 있다.

    콤마를 사용하게 되면 변수 사이에 공백이 자연스럽게 생기게 된다.

    이 외에 더하기(+)도 활용할 수 있는데,

    • 문자와 문자 사이에 더하기를 활용하면 문자를 공백 없이 붙여서 출력해주고
    • 숫자 변수 사이에 더하기를 활용하면 숫자 변수끼리 더한 값을 출력해준다.

     

    a = 100
    b = 200
    hi1 = '안녕'
    hi2 = '하세요' 
    
    print('number a b :', a, b)
    print('number a b : ', a, b) # 콤마(,)로 구분하면 자동으로 한 칸 띄워진다
    print('number a b : ', a+b) # 숫자끼리 더하면 더한 값으로 출력된다
    print('number a b : ', a-b, a*b, a/b) # 숫자 변수끼리는 사칙연산 가능
    
    print('hi : ', hi1+hi2) # 공백 없이 붙어서 출력된다
    print('hi : ', hi1, hi2) # '안녕 하세요'로 사이에 공백이 있는채로 출력된다

     

     

    두 번째 줄을 보면 'number a b : '와 같이 따옴표 전에 띄어쓰기 한 칸을 해주었더니 첫 번째 줄보다 한 칸 뒤로 밀린 것을 볼 수 있다. 또한, 더하기 기호를 활용하여 문자열 변수끼리는 붙여서 출력되고, 숫자 변수끼리는 더해서 출력되는 것을 확인할 수 있다. 숫자 변수끼리는 사칙 연산도 가능하다.

    (주의 : 숫자 변수와 문자 변수 사이에 더하기 기호를 사용하면 오류가 난다.)

     

    1. 중괄호와 .format 옵션 사용

    위의 방법 말고 중괄호와 .format 옵션을 사용해서도 변수를 출력할 수 있다.

    print('number a b : {} {}' .format(a, b))

     

    이렇게 사용해도 위의 첫 번째 결과값과 똑같이 출력되는 것을 확인할 수 있다.

     

    2. 중괄호 인덱스 지정

    print('number e f : {0} {1}' .format('1', '2')) # 중괄호 안에 인덱스를 지정하여 사용할 수도 있다
    print('number e f : {1} {0}' .format('1', '2')) # 순서를 바꾸고 싶다면 중괄호 안 인덱스를 바꾸면 된다
    
    print('number : {0} {1} {2} {3}' .format(a, b, c, d)) # 3개 이상의 여러 값도 전부 출력할 수 있다
    print('number : {3} {2} {1} {0}' .format(a, b, c, d))

     

    중괄호 안에 인덱스를 지정해주면 변수명을 일일이 바꿔주지 않아도 중괄호 안의 숫자만 바꾸면 출력되는 순서를 바꿀 수 있다. 인덱스는 0부터 시작해서 지정해주면 된다. .format 안의 변수, 문자열을 인식한다.

     


    ⭐ 소스 코드

    a = 100
    b = 200
    c = 300
    d = 400
    
    print('number a b : {} {}' .format(a, b))
    print('number c d :', c, d)
    print('number c d : ', c, d) # 콤마(,)로 구분하면 자동으로 한 칸 띄워진다
    print('number c d : ', c+d) # 숫자끼리 더하면 더한 값으로 출력된다
    
    hi1 = '안녕'
    hi2 = '하세요'
    print('인사 :', hi1+hi2) # 공백 없이 붙어서 출력된다
    print('인사 :', hi1, hi2) # '안녕 하세요'로 사이에 공백이 있는채로 출력된다
    
    print('number e f : {0} {1}' .format('1', '2')) # 중괄호 안에 인덱스를 지정하여 사용할 수도 있다
    print('number e f : {1} {0}' .format('1', '2')) # 순서를 바꾸고 싶다면 중괄호 안 인덱스를 바꾸면 된다
    
    print('number : {0} {1} {2} {3}' .format(a, b, c, d)) # 3개 이상의 여러 값도 전부 출력할 수 있다
    print('number : {3} {2} {1} {0}' .format(a, b, c, d))

     

    전체 예제가 필요하다면 위의 코드를 복사 붙여넣기 해서 정확하게 이해해보자. 

     

     

    댓글과 공감은 글쓴이에게 큰 힘이 됩니다! 😃😃

    틀린 내용이 있다면 언제든지 댓글로 지적해주시면 감사하겠습니다.

    728x90

    댓글

Copyright 2020. s0ye0ve all rights reserved.

Designed by Tistory.