我正在运行pytzwhere软件包给出的最简单的测试问题。该模块导入,但出现错误。 pytzwhere似乎是从GPS坐标获取时区的不错的离线选项,但是没有太多文档。任何有关如何调和这方面的帮助将不胜感激!
In [94]:
import tzwhere
w = tzwhere()
print w.tzNameAt(1.352083, 103.819836)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-94-0b50c8083e93> in <module>()
1 import tzwhere
2
----> 3 w = tzwhere()
4 print w.tzNameAt(1.352083, 103.819836)
TypeError: 'module' object is not callable
编辑:
根据以下注释,通过以下代码修改已解决了该问题-
In [108]:
from tzwhere import tzwhere
w = tzwhere.tzwhere()
print w.tzNameAt(1.352083, 103.819836)
-----------------------------------------------------------------------------
Reading json input file: /Users/user/anaconda/lib/python2.7/site-packages/tzwhere/tz_world_compact.json
Asia/Singapore
最佳答案
您不能仅仅从w = tzwhere()
这样的模块实例化w。 tzwhere是包含tzwhere类的模块。正如Python正确指出的那样,模块不可调用。from tzwhere import tzwherew = tzwhere()
第一行从模块tzwhere导入类tzwhere。
编辑:如果您导入“我的方式” :-) w = tzwhere()
是w作为类tzwhere的实例的有效创建。
通常在Python中,类将命名为TzWhere,这样可以避免此类混淆。
我认为您正在尝试使用https://github.com/pegler/pytzwhere/blob/master/tzwhere/tzwhere.py
关于python - tzwhere(pytzwhere)-具有简单测试用例的Python 2.7,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23769883/