【发布时间】:2022-11-18 05:21:21
【问题描述】:
你好, 我的目标是绘制与简单函数相关的曲线(当然没有 mathplotlib)。除此之外,我挑战自己在一行中编写代码......这真的可能吗?这是我当前的代码已经很好地收缩了:
from turtle import*
expression = str(input('Entrez la fonction:\n>>> '))
interval = int(input('Entrez le nombre de termes:\n>>> '))
winsize = screensize()
hideturtle(), speed(0), goto(-winsize[0], 0), goto(winsize[0], 0), goto(0, 0), goto(0, -winsize[1]), goto(0, winsize[1])
calc = dict(map(lambda x: (x, eval(expression.replace("x", '(' + str(x) + ')'))), [k for k in range(-round(interval/2), round(interval/2+1))]))
maxi = abs(min(calc.values())) if abs(min(calc.values())) > abs(max(calc.values())) else abs(max(calc.values()))
[(penup(), goto(x*winsize[0]/interval, y*winsize[1]/maxi), pendown(), dot(5)) for x, y in list(calc.items())]
exitonclick()
【问题讨论】:
-
这有什么意义呢?编写不可读的代码?把简单的任务复杂化?
-
练习 lambda 和 map 函数也许
-
使用 matplotlib 继续你的生活。
标签: python math lambda turtle-graphics