#python #random #turtle-graphics
#python #Случайный #черепаха-графика
Вопрос:
Я пытался использовать goto()
для отправки черепах в случайную позицию, но я получаю ошибку при запуске программы.
Я не понимаю, как еще это сделать, и не уверен в других способах. Мой текущий код:
t1.shape('turtle')
t1.penup()
t1.goto((randint(-100,0)),(randint(100,0)))#this is the line with the error
Я хочу, чтобы черепаха переходила к случайным координатам в поле между -100,100 и 0,100, но я получаю сообщение об ошибке:
Traceback (most recent call last):
File "C:Userssamdu_000OneDriveDocumentspythonbattle turtles.py", line 18, in <module>
t1.goto((randint(-100,0)),(randint(100,0)))
File "C:Userssamdu_000AppDataLocalProgramsPythonPython3732librandom.py", line 222, in randint
return self.randrange(a, b 1)
File "C:Userssamdu_000AppDataLocalProgramsPythonPython37-
32librandom.py", line 200, in randrange
raise ValueError("empty range for randrange() (%d,%d, %d)" % (istart,
istop, width))
ValueError: empty range for randrange() (100,1, -99)
Ответ №1:
Вы запрашиваете число от 100 до 0. Но посмотрите на ссылку на randint()
:
random.randint(a, b)
Возвращает случайное целое число N такое, что a <= N <= b.
a
должно быть меньше или равно b
. Итак, замените randint(100,0)
на randint(0,100)
:
import turtle
from random import randint
t1 = turtle.Turtle()
t1.shape('turtle')
t1.penup()
t1.goto(randint(-100,0),randint(0,100))
turtle.done()
Комментарии:
1. используйте setpos() в turtle
2. @Исходный код программиста? Здесь они используются взаимозаменяемо: docs.python.org/2/library/turtle.html#turtle.setpos
3. О, моя ошибка @glhr
4. Я этого не видел