파이썬 *로 트리 만들기 - Print 활용하기

 

먼저 파이썬의 트리 만들기를 검토하기 전에 print 문에 대한 문법 공부를 간단히 해보겠습니다.

 

Print 옵션(sep, end)

 

파이썬의 출력문은 print를 사용하며 두 개의 옵션을 사용할 수 있습니다.

 

https://docs.python.org/ko/3/library/functions.html#print

- sep=" " 
 이 옵션을 이용하게 되면 print문의 출력문들 사이에 해당하는 내용을 넣을 수 있습니다. 기본 값으로는 공백이 들어가 있으며 이를 사용해 원하는 문자를 입력할 수 있습니다.

print('S','E','P', sep='@')

 



- end=" "
 이 옵션의 경우 print 문을 이용해 출력을 완료한 뒤의 내용을 수정할 수 있습니다. 기본 값으로는 개행(\n)이 들어가 있으며 이를 사용해 개행을 없애거나 원하는 문자를 입력할 수 있습니다.

아래와 같이 프린트 옵션은 개행이 들어 있어서 2줄로 표시되지만 end=" "를 입력하면 아래처럼 한줄에 표기가 됩니다.

print("1번칸", end=" ")
print("2번칸")

 

 

 

Built-in Functions

The Python interpreter has a number of functions and types built into it that are always available. They are listed here in alphabetical order.,,,, Built-in Functions,,, A, abs(), aiter(), all(), a...

docs.python.org

 

Print로 트리 만들기

예를 들어 아래처럼 트리를 만들어 볼 수 있습니다.

 

먼저 num 함수에 열 개수를 숫자로 받고

 

여러줄을 출력해야하니 for문으로 0~num 사이에 프린트 물을 출력합니다.

 

num = int(input("열 개수를 알려주세요"))

for i in range(0, num):
    print("*")

열 개수 대로 하나씩 *을찍는 구조입니다.

실행 결과는 위와 같이 나옵니다.

 

이제 열마다 늘어나는 것을 구현해야 하는데요.

num = int(input("열 개수를 알려주세요"))

for i in range(0, num):
    for j in range(0, i+1):
        print("*", end=" ")
    print()

앞서 살펴본 end로 같은 열에 별을 치고 end로 줄마다 합친다음

첫번째 반복문에서 개행을 위해서 print()를 해주었습니다.

 

아래 결과문입니다.

최종적으로 가운데에 정리하기 위해서 for문을 한번더 사용했습니다.

num = int(input("열 개수를 알려주세요"))

for i in range(0, num):
    for j in range(0, num-i-1):
        print(end=" ")
    for j in range(0, i+1):
        print("*", end =" ")

    print()

 

그럼 잘 사용하세요.