파이썬에서 여러 줄로 출력하는 법을 알고 싶습니다

조회수 2993회

안녕하세요 저는 파이썬 초심자입니다.


a=10
b=7
c=5
d=9
e=8
f=2

print(a,b,c,d,e,f)
>>> 10 7 5 9 8 2

를 여러 줄로 끊어서 출력하려면 어떻게 해야 할까요?

10 7 5
9 8 2

처럼 한 줄에 3개씩, 총 2줄로 출력한다거나,

10 7
5 9
8 2

한 줄에 2개씩, 총 3줄로 출력하는 등...

한 줄에 들어갈 수 있는 변수의 개수를 제가 조정할 수 있는 방법이 있을까요?

도와주시면 감사하겠습니다

  • (•́ ✖ •̀)
    알 수 없는 사용자

2 답변

  • 안녕하세요

    print('test', end=' ') 와 print()를 이용해서 조절하면 될것 같아요

    a = 10
    b = 7
    c = 5
    d = 9
    e = 8
    f = 2
    
    l = [a, b, c, d, e, f]           # 리스트로 만들었습니다
    
    def rc_print(row, col):          # 줄과 한줄에 출력할 개수를 입력받습니다
        i = 0
        for _ in range(row):         # 줄 만큼 반복!
            for c in range(col):     # 개수만큼 반복!
                if i+c < len(l):
                    print(l[i + c], end=' ')
            print()
            i = i + col
    
    rc_print(3,2)
    # 10 7 
    # 5 9 
    # 8 2 
    
    rc_print(2,3)
    # 10 7 5 
    # 9 8 2 
    
    rc_print(2,5)
    # 10 7 5 9 8 
    # 2 
    

    혹시해서 쉬운방법ver

    a=10
    b=7
    c=5
    d=9
    e=8
    f=2
    
    print(a, b, c)
    print(c, e, f)
    

    수고하세요

  • def myprint(n, result):
        for i in range(len(result)):
            if i%n == 0:print()
            print(result[i],  end = ' ')
    
    >>> rgs = tuple(range(30));myprint(5, rgs)
    
    0 1 2 3 4 
    5 6 7 8 9 
    10 11 12 13 14 
    15 16 17 18 19 
    20 21 22 23 24 
    25 26 27 28 29 
    >>> myprint(7, rgs)
    
    0 1 2 3 4 5 6 
    7 8 9 10 11 12 13 
    14 15 16 17 18 19 20 
    21 22 23 24 25 26 27 
    28 29
    

    또는 enumerate함수를 사용하면

    def myprint(n, result):
        for k, v in enumerate(result, 1): 
            print('{}'.format(v), end='\n' if k % n == 0 else ' ')
    
    • (•́ ✖ •̀)
      알 수 없는 사용자
    • effective python 에 보면, enumerate 가 좀 더 파이써닉하다고 해요. `for i, r in enumerate(result):` 써버릇하면 좀 더 간결해요. nowp 2019.5.16 12:08
    • 아! 그렇군요... 앞으로는 enumerate를 쓰도록 하겠습니다. 감사합니다.^^ 알 수 없는 사용자 2019.5.16 12:42

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)