코테 공부/python
Python 빈 배열에 인덱스 할당 불가
sweet-po
2023. 5. 30. 11:20
https://school.programmers.co.kr/learn/courses/30/lessons/120844
오늘도 일차원적인 코드 짜기로 읏샤읏샤 하는 와중에
def solution(numbers, direction):
answer = []
if direction == 'right':
for i in range(len(numbers)):
if i == len(numbers) - 1:
answer[0] = numbers[i]
else:
answer[i + 1] = numbers[i]
else:
for i in range(len(numbers)):
if i == 0:
answer[len(numbers) - 1] = numbers[i]
else:
answer[i - 1] = numbers[i]
return answer
인덱스 에러가 자꾸 뜨길래 인덱스 범위 맞게 설정했는데..? 하면서 의문을 품고 있다가
IndexError: list assignment index out of range
초기 선언에서 빈배열이라 append를 해야지 인덱스 할당을 하면 안되는 거였나! 해서 수정해서 그만한 크기의 배열 만들어놓으니 인덱스에 할당이 가능해졌다.
파이썬이라고 다되는건 아니네..
문제 풀면서 닥치는대로 문법을 익히니까 이런 문제가 있긴 한데.. 뭐.. 해야지 어쩌겠어..
def solution(numbers, direction):
answer = list(range(len(numbers))) #요래요래 바꿔줌
if direction == 'right':
for i in range(len(numbers)):
if i == len(numbers) - 1:
answer[0] = numbers[i]
else:
answer[i + 1] = numbers[i]
else:
for i in range(len(numbers)):
if i == 0:
answer[len(numbers) - 1] = numbers[i]
else:
answer[i - 1] = numbers[i]
return answer