strip과 split의 차이를 정리해봤다.
strip은 ()에 있는 것들을 다 지운다는 의미
백준 1181 단어정렬
에서
import sys
n = int(sys.stdin.readline())
word = []
for i in range(n):
word.append(sys.stdin.readline().strip())
word = list(set(word))
word.sort()
word.sort(key=len)
for i in word:
print(i)
3
aba
bb
cccc
bb
aba
ccc
여기서 strip()을 사용하지 않으면
aba
bb
cccc
bb
aba
cccc
이렇게 \n
이 포함된 상태로 출력된다는 것을 알 수 있다.
split은 ()안 변수를 기준으로 나눈다는 의미
import sys
input = sys.stdin.readline
N = int(input())
num = list(map(int,input().strip().split(' ')))
tree =[[] for _ in range(N)]
여기서 num
은 space를 기준으로 입력받은 int형 list를 만든다는 것이다.
python은 정말 이런 점이 아름답지 않나 싶다.
import sys
input = sys.stdin.readline
N = int(input())
a = [list(map(int, input().split())) for _ in range(N)]
## N개의 row만큼 list를 입력받는다.
list(map(int, input()))랑 문자열 배열의 경우 list 와 append 사용한다는 점도 알 수 있었다.
import sys
input = sys.stdin.readline
N = int(input().strip())
tree = {}
for n in range(N):
root, left, right = input().strip().split()
tree[root] = [left, right]
#Print(tree[0][]) ##출력 안 됨.
print(tree['A'][0])
print(tree['A'][1])
여기서
`input().strip().split()을 input().split().strip()으로 바꾸면 작동하지 않는다.