使用Python从csv文件打印带有坐标的地图
我正在尝试使用turtle graphic从csv文件绘制地图 我的csv文件在这里: 我的节目:使用Python从csv文件打印带有坐标的地图,python,csv,turtle-graphics,Python,Csv,Turtle Graphics,我正在尝试使用turtle graphic从csv文件绘制地图 我的csv文件在这里: 我的节目: import turtle import csv import math def drawMap(): filename = "C:\python-exercises\coordinates1.csv" trace = turtle.Turtle() trace.up() #scr = Screen() with open(filename, 'r'
import turtle
import csv
import math
def drawMap():
filename = "C:\python-exercises\coordinates1.csv"
trace = turtle.Turtle()
trace.up()
#scr = Screen()
with open(filename, 'r') as csvfile:
reader = reader = csv.DictReader(csvfile)
for row in reader:
x = (row[0])
y = (row[1])
trace.goto(x,y)
trace.write(".")
raw_input()
#scr.mainloop()
drawMap()
但它不会显示任何内容,并且还会生成以下错误:
x = row([0])
keyError: 0
下面应该让你开始。您试图读取的文件不是
csv
格式,因此您可以自己读取以下行,而不是使用csv库:
import turtle
import math
def drawMap():
filename = r"C:\python-exercises\coordinates1.csv"
trace = turtle.Turtle()
trace.up()
#scr = Screen()
with open(filename, 'r') as f_input:
for row in f_input:
row = row.strip('()\n').split(',')
x = float(row[0])
y = float(row[1])
trace.goto(x,y)
trace.write(".")
raw_input()
#scr.mainloop()
drawMap()
这将获取每一行,删除外括号和换行符,并将其拆分为两列。然后将这些列转换为浮动
,供您的turtle程序进行解释
如果您不确定某些东西为什么不工作,请添加一些print
语句以查看发生了什么
另外,不要忘记在文件名路径前面加上
r
,这会阻止Python试图解释字符串中的反斜杠。以下内容应该可以帮助您开始。您试图读取的文件不是csv
格式,因此您可以自己读取以下行,而不是使用csv库:
import turtle
import math
def drawMap():
filename = r"C:\python-exercises\coordinates1.csv"
trace = turtle.Turtle()
trace.up()
#scr = Screen()
with open(filename, 'r') as f_input:
for row in f_input:
row = row.strip('()\n').split(',')
x = float(row[0])
y = float(row[1])
trace.goto(x,y)
trace.write(".")
raw_input()
#scr.mainloop()
drawMap()
这将获取每一行,删除外括号和换行符,并将其拆分为两列。然后将这些列转换为浮动
,供您的turtle程序进行解释
如果您不确定某些东西为什么不工作,请添加一些print
语句以查看发生了什么
另外,不要忘记在文件名路径前面加上r
,这会阻止Python试图解释字符串中的反斜杠