728x90
- extend()함수
N =[]
while True:
N.extend(list(map(int,input().split())))
if 0 in N:
N.remove(0)
break
위 코드에서 extend()대신 append()를 쓰면 while루프를 절대 탈출하지 못한다. if 0 in N조건을 만족하는 경우가 절대 존재하지 않기 때문이다. 가령 입력값이 1 2 3 4라면, N은 [[1,2,3,4]]와 같은 식으로 저장된다. 이는 말 그대로 리스트를 기존 N리스트에 append시키기 때문이며, 이를 해결하기 위해 리스트를 extend(확장)시켜야 한다. extend를 쓰면 동일 입력에 대해 [1,2,3,4]로 저장된다.
2. max() python 내장함수
보통 max(a1, a2) 와 같은 식으로 쓰여서 a1과 a2 중 더 큰 값을 반환하는데,
max(lst)가 들어가면, lst라는 list에서 가장 큰 원소 값을 반환한다.
lst = [1,3]
print(max(lst))
이러면 3 출력된다.
당연한 이야기지만,
lst = [1,3,[1,3,4]]
print(max(lst))
이러면 error뜬다.
3. range(a,b,c)
여기서 3번째 argument값은 0일 수 없다.
이 코드를 해석해보면, a부터 시작해 b-1까지 c만큼 더해진다.
당연하게도 range(0,3,-1)같은 코드는 신택스 에러다. 경고는 안뜨는데, 실행은 안된다.
for i in range(3,0,-1):
print(i , end = ' ')
라고 하면, 3 2 1이 출력된다.
댓글