我正在为一个将在 Raspberry Pi 和 Arduino 上运行以引导望远镜的类构建一个简单的 python 程序。我前段时间开始学习 python,但我无法让我的函数正常工作。现在,我有这个:
import ephem
def const(p, d): # find the constellation #
def loc():
sbend = ephem.Observer()
sbend.lat = '41.67'
sbend.lon = '86.26'
p = getattr(ephem, p)
p.compute(sbend)
print p.alt, p.az
o = getattr(ephem, p)
print ephem.constellation(o(d))
return loc()
const(raw_input('Planet: '), raw_input('yyyy/mm/dd: '))
据我记得,另一个内部的函数可以从父级调用一个变量。它也可以像我最后那样反过来工作吗?我希望能够根据硬编码的位置打印星座(正在工作)以及行星的 alt 和 az。出于某种原因,它没有计算高度和方位角。想法?
编辑
我return loc()
在第 14 行添加。
我正在做更多的阅读,其他一些线程说要到达内部函数,它需要在父函数的末尾返回。但是,它仍然不适合我。