python - 如何从顶点列表在 SymPy 中制作多边形

标签 python sympy

我想使用 SymPy 创建一个有 n 个面的多边形并计算所有参数。

最简单的形式是

from sympy import Polygon
p1, p2, p3, p4, p5 = [(0, 0), (1, 0), (5, 1), (0, 1), (3, 0)]
Polygon(p1, p2, p3, p4, p5)

Polygon(Point(0, 0), Point(1, 0), Point(5, 1), Point(0, 1))

但我想使用列表中的 n 个点,例如

p = [(0, 0), (1, 0), (5, 1), (0, 1), (3, 0)]
Polygon(p)

但这种形式和类似形式未经验证。

有什么建议吗?

最佳答案

您可以通过在参数列表前放置一个星号来扩展它,如下所示:

p=[(0, 0), (1, 0), (5, 1), (0, 1), (3, 0)]
Polygon(*p)

这相当于调用 Polygon((0, 0), (1, 0), (5, 1), (0, 1), (3, 0))

关于python - 如何从顶点列表在 SymPy 中制作多边形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15974381/

相关文章:

sympy - IPython Notebook Sympy 数学渲染

python - 为 MySQL View 创建模型并加入它

python - 在 SymPy 中选择不同的表达式分解

python - 如何在 sympy 中求解非线性方程?

python - arg和atan2不同的原因

python - 使用 Sympy 返回自动导数

python - 使用 matplotlib 更新灰度图像

python - 在 Python 中按索引合并列表

python - 如何指定python pip的安装顺序?

python - 查找文本中单词列表中单词的出现次数