我正在尝试将一段代码从Python移植到PHP。我遇到了一条我不理解的符号。
secLat = 1./cos(lat)
./运营商在此背景下做了什么?
答案 0 :(得分:13)
他们只是使用小数后跟分号来确保结果是浮点而不是int。这避免了以下问题:
>>> 1/3
0
>>> 1./3
0.3333333333333333
答案 1 :(得分:12)
你正在读错我害怕;它是:
(1.)/cos(lat)
因此,1.0
的{{1}}除以浮点值cos()
(省略零)。
答案 2 :(得分:3)
它使1为浮点值。相当于float(1)
有两个整数,/
是一个底层函数:
>>> 12/5
2
如果一个参数为浮点数,/
就会按预期运行:
>>> 12.0/5
2.4
>>> 12/5.0
2.4
恕我直言,如果以这种方式编写(在Python中),你发布的代码就不那么模糊了
secLat = 1.0/cos(lat)
或者
secLat = float(1)/cos(lat)
或
secLat = 1/cos(lat)
由于math.cos()返回一个浮点数,因此可以在顶部使用整数。
如果你希望Python有一个类似于Perl / PHP的“true division”,你就是这样做的:
>>> from __future__ import division
>>> 1/2
0.5
答案 3 :(得分:2)
1.
表示浮点数。 /
代表分歧。