Так что я делаю программу для рисования конкретных букв с использованием черепахи, и я настроил шкалу параметров, чтобы влиять на размер и толщину пера программы на основе подсказки для ввода. вот что я имею ... Я продолжаю получать ошибку, говоря, что масштаб не определен.Python Параметр не задан
import turtle
def drawLetter(letter):
if letter == " ":
space(scale)
elif letter == "i":
i_lc(scale)
elif letter == "I":
i_uc(scale)
elif letter == "s":
s_lc(scale)
elif letter == "S":
s_uc(scale)
elif letter == "C":
c_uc(scale)
elif letter == "c":
c_lc(scale)
def space(scale):
turtle.up()
turtle.forward(30 * scale)
def questionMark():
""" Draw a question mark.
"""
turtle.forward(10)
turtle.down()
turtle.left(90)
turtle.forward(2)
turtle.up()
turtle.forward(3)
turtle.down()
turtle.forward(5)
turtle.right(90)
turtle.forward(10)
turtle.left(90)
turtle.forward(10)
turtle.left(90)
turtle.forward(20)
turtle.left(90)
turtle.forward(5)
turtle.up()
turtle.forward(15)
turtle.left(90)
turtle.forward (30)
def i_uc(scale):
""" Draw an upper case I.
"""
turtle.down()
turtle.forward(10)
turtle.left(90)
turtle.forward(20)
turtle.left(90)
turtle.forward(10)
turtle.left(180)
turtle.forward(20)
turtle.left(180)
turtle.forward(10)
turtle.left(90)
turtle.forward(20)
turtle.left(90)
turtle.forward(10)
turtle.up()
turtle.forward(10)
def i_lc(scale):
""" Draw a lower case i.
"""
turtle.forward(10)
turtle.down()
turtle.left(90)
turtle.forward(11)
turtle.up()
turtle.forward(2)
turtle.down()
turtle.forward(2)
turtle.up()
turtle.right(180)
turtle.forward(15)
turtle.left(90)
turtle.forward(20)
def s_uc(scale):
""" Draw an upper case S.
"""
turtle.left(90)
turtle.forward(20)
turtle.right(90)
turtle.forward(20)
turtle.right(180)
turtle.down()
turtle.forward(20)
turtle.left(90)
turtle.forward(10)
turtle.left(90)
turtle.forward(20)
turtle.right(90)
turtle.forward(10)
turtle.right(90)
turtle.forward(20)
turtle.left(180)
turtle.up()
turtle.forward(30)
def s_lc(scale):
""" Draw a lower case s.
"""
turtle.down()
turtle.forward(20 * scale)
turtle.left(90)
turtle.forward(5 * scale)
turtle.left(90)
turtle.forward(20 * scale)
turtle.right(90)
turtle.forward(5 * scale)
turtle.right(90)
turtle.forward(20 * scale)
turtle.up()
turtle.right(90)
turtle.forward(10 * scale)
turtle.left(90)
turtle.forward(10 * scale)
def c_uc(scale):
turtle.down()
turtle.forward(20 * scale)
turtle.forward(-20 * scale)
turtle.left(90)
turtle.forward(20 * scale)
turtle.right(90)
turtle.forward(20 * scale)
turtle.forward(-20 * scale)
turtle.left(90)
turtle.forward(-20 * scale)
turtle.up()
turtle.right(90)
turtle.forward(20 * scale)
def c_lc(scale):
turtle.down()
turtle.forward(20 * scale)
turtle.forward(-20 * scale)
turtle.left(90)
turtle.forward(10 * scale)
turtle.right(90)
turtle.forward(20 * scale)
turtle.forward(-20 * scale)
turtle.left(90)
turtle.forward(-10 * scale)
turtle.up()
turtle.right(90)
turtle.forward(20 * scale)
def main():
scale == input("Enter scale:")
turtle.pensize(scale)
Сделать этот пост более читаемым, форматируя свой код правильно и ограничивая количество введенного кода (покажите только то, что необходимо для демонстрации и воспроизведения ошибки). Насколько я понимаю, вы называете 'c_lc (scale)' (например), но вы не определяете переменную, называемую «scale» в «верхней» программе, которая печатает буквы. Отсюда и ошибка. –
Пожалуйста, сделайте * не * используйте вкладки для отступа. Вы должны использовать 4 пробела вместо вкладки. ** Любой редактор ** имеет возможность вставлять пробелы вместо вкладки при нажатии клавиши вкладки, поэтому никаких оправданий для этого. (О том, почему следует избегать вкладок: они выглядят по-разному в разных средах, поэтому даже если на вашем компьютере код выглядит правильно, в другом могут быть загромождены отступы. Также при копировании с веб-сайта у меня часто возникают проблемы с смешанным пространством и вкладками) – Bakuriu