This question is unlikely to help any future visitors; it is only relevant to a small geographic area, a specific moment in time, or an extraordinarily narrow situation that is not generally applicable to the worldwide audience of the internet. For help making this question more broadly applicable, visit the help center
                            
                        
                    
                
                                7年前关闭。
            
                    
大家好
这是我运行带有python文件的问题

execfile("create_revdict.py")


我懂了

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "create_revdict.py", line 91, in <module>
    combos =  QuickSky.get_combos(det_keys)
AttributeError: 'module' object has no attribute 'get_combos'


但是当我查看QuickSky模块时,这是从pyc文件导入的
我发现

help(QuickSky)


FILE
    /Users/alessandromanzotti/Downloads/FindSkyArea/QuickSky.pyc

CLASSES
__builtin__.object
    Mapper

class Mapper(__builtin__.object)
 |  This is a Mapper class to map the timedelays to the
 |  keys
 |
 |  Methods defined here:
 |
 |  __init__(self, dets, timescope=10000)
 |
 |  convert_bin_time(self, bin)
 |
 |  convert_time_bin(self, t)
 |
 |  create_combo_error(self, error_dict)
 |
 |  create_dict(self, grid_size, func_time_dict, *args)
 |      Create the actual reverse dictionary
 |      @param grid_size: grid size in radians
 |      @param func_time_dict: function to return the time dict
 |                            for a given sky position.
 |                            fun(lon, lat)
 |
 |  create_key(self, timedelay_dict)
 |      Create a key from the time delay dict
 |
 |  create_key_list(self, timedelay_dict, error_dict)
 |      Create a bunch of keys including the errors
 |      @params timedelay_dict: timedelay betwen the different sites
 |      @params error_dict: the individual detector timing errors
 |
 |  create_key_list_ellipse(self, timedelay_dict, error_dict)
 |
 |  get_combos(self)
 |      Create all possible combinations from the det_keys list,
 |      in alphabetical order
 |
 |  get_point_area_sqd(self)
    get_points(self, listkeys)
 |
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |
 |  __dict__
 |      dictionary for instance variables (if defined)
 |
 |  __weakref__
 |      list of weak references to the object (if defined)
 FUNCTIONS
 define_network(det_keys, flow=10.0)
    Creates the detector network to use
    @param det_keys: list of detectors to be included in the network
    @param flow: The lower cutoff frequency [Hz]


因此,QuickSky似乎具有属性get_combos。

不幸的是,我没有编写QuickSky.pyc,因此无法访问QuickSky.py源。

错误可能是什么?

最佳答案

消息告诉您,get_combos不是模块QuickSky的功能。您可以使用dir(QuickSky)检查此模块的内容。

看起来get_combos代替了QuickSky.Mapper类的方法。您可能需要使用适当的dets参数创建后者的实例。

关于python - AttributeError:'模块'对象没有属性'get_combos',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12587775/

10-12 00:42