반응형
저는 Python 3.4로 간단한 게임을 작성하고 있습니다. 저는 파이썬에서 완전히 새로운 사람입니다. 아래 코드 :
def shapeAt(self, x, y):
return self.board[(y * Board.BoardWidth) + x]
오류가 발생합니다.
TypeError: list indices must be integers, not float
지금은 파이썬이 목록 인수가 정수가 아니라고 "생각"할 때 이런 일이 발생할 수 있음을 발견했습니다. 그것을 고치는 방법을 알고 있습니까?
해결 방법
int ((y * Board.BoardWidth) + x)
는 int
를 사용하여 0에 가장 가까운 정수를 얻습니다.
def shapeAt(self, x, y):
return self.board[int((y * Board.BoardWidth) + x)] # will give you floor value.
하한값을 얻으려면 math.floor
(m.wasowski의 도움으로)를 사용하십시오.
math.floor((y * Board.BoardWidth) + x)
참조 페이지 https://stackoverflow.com/questions/27244123
반응형
'파이썬' 카테고리의 다른 글
파이썬 날짜 문자열을 DateTime 개체로 변환하는 방법은 무엇입니까? (0) | 2020.12.04 |
---|---|
파이썬 HTML 파일을 어떻게 열지? (0) | 2020.12.04 |
파이썬 Python 스크립트 예약-Windows 7 (0) | 2020.12.04 |
파이썬 : 배열에서 요소의 위치 찾기 (0) | 2020.12.03 |
파이썬 Python : 임의 시스템 시간 시드 (0) | 2020.12.03 |
댓글