0

我的作业(必须使用 Turtle)要求我使用给定的参数绘制三个螺旋线。绘图功能很好,但现在我需要一个从文本文件中获取参数的函数。

文本文件中的参数:

black,20,10,3,1
red,10,20,4,3
blue,10,-20,-4,3

我的绘图功能是

def draw_spiral(color, arcs, initialradius, radiusgrowth, thickness):
    color(color)
    pensize(thickness)
    for i in range(arcs):
        growth = radiusgrowth * i
        circle(initialradius+radiusgrowth, 90)

到目前为止我已经尝试过:

def draw_from_file(name):
   with open(name) as file:

然后我空白,不知何故我需要从文本文件中提取正确的值到函数draw_spiral中的每个参数。

非常感谢您的努力和建议。

4

2 回答 2

1

简单的!

def draw_from_file(name):
   with open(name, "r") as file:
        lines = file.readlines()
        for line in lines:
            new_args = line.split(',')
            draw_spiral(new_args[0], new_args[1], new_args[2], new_args[3], new_args[4])

有更简洁和漂亮的方法可以做到这一点,但这就是它的本质。将逗号上的行拆分为一个列表,然后将该列表的元素提供给您的draw_spiral函数。

于 2020-04-29T18:04:35.797 回答
0

尝试这个:

def draw_from_file(name):
   with open(name, "r") as file:
       for line in file.read().splitlines():
           params = line.split(",") # split each line by comma to create list of values
           draw_spiral(*params)

于 2020-04-29T18:06:19.437 回答