import turtle
import random
## 전역 변수 선언 부분 ##
myTurtle, tX, tY, tColor, tSize, tShape = [None] * 6
shapeList = []
playerTurtles = [] # 거북이 2차원 리스트
swidth, sheight = 500, 500
## 메인 코드 부분 ##
if __name__ == "__main__" :
turtle.title('거북이 리스트 활용')
turtle.setup(width = swidth + 50, height = sheight + 50)
turtle.screensize(swidth, sheight)
shapeList = turtle.getshapes()
for i in range(0, 100) :
random.shuffle(shapeList)
myTurtle = turtle.Turtle(shapeList[0])
tX = random.randrange(-swidth / 2, swidth / 2)
tY = random.randrange(-sheight / 2, sheight / 2)
r = random.random(); g = random.random(); b = random.random()
tSize = random.randrange(1, 3)
playerTurtles.append([myTurtle, tX, tY, tSize, r, g, b])
for tList in playerTurtles :
myTurtle = tList[0]
myTurtle.color((tList[4], tList[5], tList[6]))
myTurtle.pencolor((tList[4], tList[5], tList[6]))
myTurtle.turtlesize((tList[3]))
myTurtle.goto((tList[1], tList[2]))
turtle.done()
DeprecationWarning: non-integer arguments to randrange() have been deprecated since Python 3.10 and will be removed in a subsequent version
아마 파이썬 3.10 버전 이상을 쓰는 사람이라면 이런 오류가 뜨며 실행되지 않았을 것이다.
찾아보니 Python 3.10에서 randrange() 함수에 정수가 아닌 인수를 전달하는 것을 더 이상 허용하지 않으며, 향후 Python 버전에서 제거될 예정이라고 한다. 즉, 위 코드에서 실수형 값을 반환하고 있기 때문에 정수형으로 전환해주어야 한다는 뜻이다.
그래서 20, 21행 코드를 아래와 같이 수정해야한다.
tX = random.randrange(-swidth // 2, swidth // 2)
tY = random.randrange(-sheight // 2, sheight // 2)
'Back-End > Python' 카테고리의 다른 글
파이썬 for Beginner 3판 10장 연습문제 답(더보기 클릭) (0) | 2023.06.14 |
---|---|
파이썬 for Beginner 3판 9장 Self Study + 연습문제 답(더보기 클릭) (0) | 2023.06.01 |
파이썬 for Beginner 3판 6장 Self Study + 연습문제 답(더보기 클릭) (2) | 2023.05.04 |
파이썬 for Beginner 3판 5장 Self Study + 연습문제 답(더보기 클릭) (0) | 2023.05.02 |
파이썬(Python) pipenv 오류 해결 방법 (0) | 2023.05.01 |