AttributeError:'module'对象没有属性'get_altitude'

时间:2016-01-03 21:50:43

标签: python python-3.x

我的pysolarrobot7.py代码的这一部分抛出了一个AttributeError

def tomorrow_heading():
    increment_min = 1
    incrementeddatetime = 0
    tomorrow_corrected = 90
    if pysolar.get_altitude(maplat, maplon, datetime.datetime.utcnow()) < 0:
        while pysolar.get_altitude(maplat, maplon, (datetime.datetime.utcnow() + datetime.timedelta(minutes=incrementeddatetime))) < 0:
          incrementeddatetime = incrementeddatetime + increment_min
        sunrise_time=(datetime.datetime.utcnow() + datetime.timedelta(minutes=incrementeddatetime))
        tomorrow_heading = pysolar.GetAzimuth(maplat, maplon, sunrise_time)
        if tomorrow_heading < 0:
            if (tomorrow_heading >= -180):
                tomorrow_corrected = ((tomorrow_heading * -1) + 180)
            if (tomorrow_heading < -180):
                tomorrow_corrected = ((tomorrow_heading * -1) - 180)
        if tomorrow_heading >= 0:

以下是错误代码

root@Primerpi:/tools# python3 solarrobot7-core.py

Traceback (most recent call last):
  File "solarrobot7-core.py", line 237, in <module>
    tomorrow_static = tomorrow_heading()
  File "solarrobot7-core.py", line 176, in tomorrow_heading
    if pysolar.get_altitude(maplat, maplon, datetime.datetime.utcnow()) < 0:
AttributeError: 'module' object has no attribute 'get_altitude'

我一直在谷歌搜索一段时间,似乎无法找到答案。 solarrobot7.py的原始代码使用GetAltitudePysolar(PascalCase),我将其更改为get_altitudepysolar(snake_case)。

1 个答案:

答案 0 :(得分:1)

pysolar没有“get_altitude”方法: 你想要子模块“solar”:)

from pysolar import solar
solar.get_altitude #this will work :)