如何修复Python中NameError: name 'turtle' is not defined错误?
解决Python Turtle的
NameError问题 错误原因
你使用from turtle import *的导入方式时,Python会将turtle模块内的所有类、函数直接导入当前命名空间,但不会导入turtle模块本身。因此调用turtle()时,Python找不到该名称,触发NameError。
修正后的完整代码
from turtle import * # 修正输入提示的拼写错误(you → your) x = input('what is your fav color?(in eng pls)') y = input('what is your name?') # 计算移动距离:取名字长度乘以100(forward需要数值,字符串乘100会生成重复字符串,无法用于移动) yx10 = len(y) * 100 # 直接使用导入的Turtle类实例化对象(首字母大写) t = Turtle() t.pencolor(x) t.forward(yx10) # 正确调用done()函数,结束绘图会话 done()
核心修正项
- 替换
turtle()为Turtle():from turtle import *已导入Turtle类,直接实例化该类即可创建海龟对象。 - 修复移动距离计算:输入的名字是字符串类型,
y * 100会生成重复100次的字符串,而t.forward()需要数值参数,因此改用len(y) * 100,以名字长度的100倍作为移动像素数。 - 修正语法错误:
- 拆分
t.pencolor(x)t.forward(yx10)为两行语句,避免语法报错; - 将
done*改为done(),这是正确的函数调用格式; - 修正输入提示里的拼写错误(
you→your)。
- 拆分
内容的提问来源于stack exchange,提问作者walee82
相关产品推荐
相关产品推荐

