我有一个测试文件,其上有坐标我的目的是创建一个函数,它接受文本文件并将其转换为坐标以绘制在乌龟中绘制图像:
river, 5
500, 500
-500, 360
400, 500
shadow, 4
500, 300
5, 500
300, 400
到目前为止,我有以下
f =open("coordinates.txt", "r")
for line in f:
line=line.split(",")
data=[]
if line:
data.append([i.strip() for i in line])
跑完后我得到以下内容:
[['river', '5']]
[['500', '500']]
[['-500', 360]]
[['400', '500']]
[['']]
[['shadow', '4']]
[['500', '300']]
[['5', '500']]
[['300', '400']]
[['']]
但是当我把它传递给龟时,它会断裂并且不起作用。我的乌龟功能如下:
p=[]
letter=block[0]
for line in block[1:]:
l.append(line)
k=p[0]
turtle.setpos(k[0],k[1])
答案 0 :(得分:0)
这似乎是代码的随机集合而不是程序。下面是我从数据和代码重建程序的意图。数据读入列表如下:
[('river', '5'), (500, 500), (-500, 360), (400, 500), ('shadow', '4'), (500, 300), (5, 500), (300, 400)]
然后用乌龟画线。
import turtle
turtle.setup(1000, 1000)
data = []
with open('coordinates.txt') as my_file:
for line in my_file:
line = line.rstrip()
if line:
x, y = line.split(', ', maxsplit=1)
try:
data.append((int(x), int(y)))
except ValueError:
data.append((x, y))
print(data)
turtle.penup()
for pair in data:
if isinstance(pair[0], int):
turtle.setpos(pair)
turtle.pendown()
else:
print('Drawing {} ({})'.format(*pair))
turtle.penup()
turtle.hideturtle()
turtle.done()
我不能说示例图很有意思: