본문 바로가기
파이썬

파이썬 Python 3.4에서 int로 "Cast"

by º기록 2020. 12. 4.
반응형

저는 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

 

 

반응형

댓글