728x90
반응형
백준 10991번을 풀면서 end 와 sep옵션에 대해서 알아보겠습니다.
https://www.acmicpc.net/problem/10991
문제요약) 아래와 같이 되는 규칙찾기!
정답)
N = int(input())
for i in range(1, N+1):
print(' '* (N-i), end = '')
for j in range(i):
print('*', end = ' ')
print()
end옵션은 문장을 출력하고 마지막에 무엇을 쓰고 끝낼지 정해줄 수 있습니다.
기본적으로 print()를 하면 자동으로 줄바꿈이 되는데요. (이를 개행이라고 합니다!)
끝에 end=""옵션을 붙이면 줄바꿈이 되지않고, 안쪽 이중포문의 출력물이 연달아서 출력되게 됩니다.
안쪽 이중포문 역시 end=" "가 있어서 줄바꿈되지않고, 갯수만큼 "*+빈칸"이 연달아서 출력됩니다.
그리고 이중포문을 빠져나갈 때, print()를 해서 줄바꿈이 되게합니다.
위에 정답 코드가 이해가 어려우실 수 있는데요. 이해하기 쉽도록 제가 코드를 한번 바꿔봤습니다!
num = int(input())
for i in range(1,num+1):
print("^"*(num-i), end = "n")
for j in range(i):
print("*", end = "p")
print()
차이점이 느껴지시나요? 헷갈리는 부분에 다른 문자를 넣어봤습니다.
그렇다면 결과는 어떻게 나올까요?
빈칸부분이 다른문자로 채워지니까 좀 더 이해하기 쉬운 것 같습니다...!
그럼 이제 end옵션말고 sep옵션을 알아볼까요?
sep옵션은 딱 예시 하나만 드리만 바로 이해하실 수 있으실겁니다!
print("010","1234","5678", sep="-")
#출력: 010-1234-5678
중간중간 들어가되, 마지막에는 붙지 않는다는 것을 바로 캐치하실 수 있겠죠..?
여기서 기억하실 점은 sep옵션은 end옵션과 다르게 줄바꿈(개행)이 자동으로 된다는 것 입니다.
10991번을 풀면서 end옵션과 sep옵션에 대해 알아봤는데요.
도움이 되셨다면 공감과 댓글 그리고 구독을 부탁드립니다.!!
728x90
반응형
'알고리즘 TIL' 카테고리의 다른 글
[파이썬python] 백준 10799번 - 쇠막대기 (3) | 2022.01.26 |
---|---|
[파이썬python] 백준 10989번 - 메모리 초과 (14) | 2022.01.25 |
[파이썬python] 백준 2751번 - merge sort (1) | 2022.01.25 |
[파이썬python] 백준 10992번 (2) | 2022.01.25 |
[파이썬python] 백준 1924번 - calendar 라이브러리 (0) | 2022.01.21 |
최근댓글