수준별 학습에서 배운것들
오늘의 수준별 학습에서 많은 것들을 배웠다. 쉬운 기초 프로그래머스 문제를 튜터님이 풀이해 주셨는데, 쉬운 문제라도 푸는방법이 여러가지가 있고, 몰랐던 방법들을 많이 알게 되었다.
1.문자열 출력하기
str = input()
print(str)
2. a와 b출력하기
# f-string 방법
a, b = map(int, input().strip().split(' '))
print(f'a = {a}')
print(f'b = {b}')
---
# format 방법 - 1
a, b = map(int, input().strip().split(' '))
print('a = {0}'.format(a))
print('b = {0}'.format(b))
# format 방법 - 2
a, b = map(int, input().strip().split(' '))
print('a = {num_a}'.format(num_a=a))
print('b = {num_b}'.format(num_b=b))
이 전에는 맨 처음의 방법과 두 번째 방법은 알고 있었는데, 세 번째 방법은 오늘 처음알게되었다. 확실히 두 번째 포맷방법이 확실하게 변수를 지정해 주어서 많은 데이터를 사용할때 조금더 보기 좋게 코드를 짤 수 있을 것 같다.
3. 문자열 반복해서 출력하기
# input 사용
str, n = input().split(' ')
n = int(n)
print(str*n)
---
# sys.stdin.raedline 사용
import sys
str, n = sys.stdin.readline().strip().split(' ')
n = int(n)
print(str*n)
sys.stdin.readline() 함수도 오늘 처음 알게 되었다. 항상 input()함수만을 사용해서 몰랐는데, 이 함수가 input()함수 보다 가독성이 훨씬 좋다고 하셨다. 또한 input 을 사용할때는 이미 코드에 strip기능이 포함 되어있기 때문에 2번 문제처럼 input()과 strip()이 함께 들어있는 건 올바르지 않다고 말씀해주셨다. 꿀팁을 듣기 전에는 전혀 생각도 하지 않고 있었던 코드들인데, 정말 여러가지로 많은 유용한 정보들을 얻을 수 있던 특강이었다.
또 각 함수에는 파라미터가 있을 수도 있고 없을 수도 있다고 하셨는데, 오늘은 print()함수의 파라미터에 대해 알려주셨다.
print()함수에는 sep='', end='/n' 파라미터가 디폴트값으로 들어있다.
sep=' ' --> ' ' 안에 무엇을 넣느냐에 따라 print의 출력값이 바뀌게 된다.
print('hello', 'world')
# 출력
hello world
print('hello','world',sep=',')
# 출력
hello,world
end='/n' --> 줄바꿈이 디폴트값으로 설정되어 있어서, 항상 줄바꿈이 되어져 출력되는 것이다. 원하는 형태로 바꾸어 주는 것도 가능 줄바꿈이 아닌 띄어 쓰기를 원한다면 end=' ' 로 변경해주면 된다.
print('hello')
print('world')
# 출력
hello
world
print('hello',end=' ')
print('world')
# 출력
hello world
또한 세미콜론(;)을 사용하면 한줄에 여러개의 명령을 작성할 수도 있다. 많은걸 배운 유익한 시간이었다. 내일도 많은걸 배울 수 있기를 기대한다.