如何在Python中执行三角形的浮点数范围?

Léo*_* 준영 -3 python math

MATLAB

x = 0:pi/100:2*pi;
y = sin(x);
plot(y)
Run Code Online (Sandbox Code Playgroud)

我认为range()不能在这里工作,因为它只接受结束参数作为整数但我需要浮点数(0.0; 2*pi).Python 2.7.11+中的伪代码

import math
x = pseudoRange(0.0, 2*math.pi, math.pi/100);
Run Code Online (Sandbox Code Playgroud)

ceil()对于整数而言,采取是不实际的.


你怎么能在Python中使用三角函数范围的浮点数?

Joh*_*man 5

使用生成器表达式:

(math.pi/100*k for k in range(200))
Run Code Online (Sandbox Code Playgroud)

如果您希望结果作为列表使用:

[math.pi/100*k for k in range(200)]
Run Code Online (Sandbox Code Playgroud)

您还可以使用list-comprehension方法获取相应的y值:

x = [math.pi/100*k for k in range(200)]
y = [math.sin(p) for p in x]
Run Code Online (Sandbox Code Playgroud)

然后x,y可以使用matplotlib绘制这对列表

需要注意的是在上面,点的范围从0.01.99*math.pi.如果你想要最终结果2*pi本身,你需要替换range(200)range(201).