我不明白为什么我不能使用变量c
。
代码:
from turtle import *
speed(0)
hideturtle()
c = 450
def grid(x,y,a):
seth(0)
pu()
goto(x,y)
pd()
for i in range(4):
forward(a)
rt(90)
for i in range(c/10):
seth(0)
forward(10)
rt(90)
forward(c)
backward(c)
for i in range(c/10):
seth(0)
rt(90)
forward(10)
rt(90)
forward(c)
backward(c)
pu()
goto(a+10,0)
write("x")
goto(0,a+10)
write("y")
pd()
grid(0,0,c)
grid(-c,0,c)
grid(-c,c,c)
grid(0,c,c)
我收到以下错误消息:
Traceback (most recent call last):
File "C:\Users\nick\Desktop\gridv2.py", line 35, in <module>
grid(0,0,c)
File "C:\Users\nick\Desktop\gridv2.py", line 15, in grid
for i in range(c/10):
TypeError: 'float' object cannot be interpreted as an integer
在:
因此,您将创建一个浮点-要解决此问题,请使用int division运算符:
如下所示,
range
仅支持整数:但是,
c/10
是一个浮点数,因为/
总是返回一个浮点数。在放入} 来完成:
range
之前,需要将c/10
设为整数。这可以通过将其放入^{或者使用^{} ,返回一个整数:
range()
只能与整数一起使用,但使用/
运算符进行除法始终会产生浮点值:再次将该值设为整数:
或者使用
//
floor division运算符:相关问题 更多 >
编程相关推荐