2016-08-31 4 views
-2

Ich schaue mir einen Code an, der mir von einem Kollegen gegeben wurde, der nicht mehr mit uns arbeitet.Untersuchen von Python-Objekten

Ich habe eine Listenvariable namens rx.

>> type(rx) 

type 'list' 

Wenn ich in rx suchen gehen [0] Ich bekomme diese:

>> rx[0] 

<Thing.thing.stuff.Rx object at 0x10e1e1c10> 

Kann jemand übersetzen, was das bedeutet? Und, noch wichtiger, wie kann ich sehen, was innerhalb dieses Objekts in der RX-Liste ist?

Jede Hilfe wird geschätzt.

+1

Es ist die repr Ausgang, was Druck, wenn Sie passiert es? –

+0

Und hier ist ein [link to repr] (https://docs.python.org/2/library/functions.html#repr) – alfasin

+0

Beginnen Sie mit der Suche nach der Quelle für das 'Rx'-Objekt über' Thing.thing.stuff. Rx' (oder was auch immer das ist) –

Antwort

1

beginnen mit help: help(rx[0])

# example python object 
class Employee: 
    """Common base class for all employees.""" 
    empCount = 0 


help(Employee) 

Ausgang:

Help on class Employee in module __main__: 

class Employee(builtins.object) 
| Common base class for all employees. 
| 
| Data descriptors defined here: 
| 
| __dict__ 
|  dictionary for instance variables (if defined) 
| 
| __weakref__ 
|  list of weak references to the object (if defined) 
| 
| ---------------------------------------------------------------------- 
| Data and other attributes defined here: 
| 
| empCount = 0 

Wenn das nicht genug Informationen ist die inspect module zu überprüfen.

Überprüfen Sie hat eine Menge von Methoden, die nützlich sein könnten, wie GetMembers und GetDoc:

import inspect 

inspect.getdoc(Employee) # 'Common base class for all employees.' 

for name, data in inspect.getmembers(Employee): 
    if name == '__builtins__': 
     continue 
    print('%s :' % name, repr(data)) 

Ausgang:

__class__ : <class 'type'> 
__delattr__ : <slot wrapper '__delattr__' of 'object' objects> 
__dict__ : mappingproxy({'__module__': '__main__', '__dict__': <attribute '__dict__' of 'Employee' objects>, '__weakref__': <attribute '__weakref__' of 'Employee' objects>, 'empCount': 0, '__doc__': 'Common base class for all employees.'}) 
__dir__ : <method '__dir__' of 'object' objects> 
__doc__ : 'Common base class for all employees.' 
__eq__ : <slot wrapper '__eq__' of 'object' objects> 
__format__ : <method '__format__' of 'object' objects> 
__ge__ : <slot wrapper '__ge__' of 'object' objects> 
__getattribute__ : <slot wrapper '__getattribute__' of 'object' objects> 
__gt__ : <slot wrapper '__gt__' of 'object' objects> 
__hash__ : <slot wrapper '__hash__' of 'object' objects> 
__init__ : <slot wrapper '__init__' of 'object' objects> 
__le__ : <slot wrapper '__le__' of 'object' objects> 
__lt__ : <slot wrapper '__lt__' of 'object' objects> 
__module__ : '__main__' 
__ne__ : <slot wrapper '__ne__' of 'object' objects> 
__new__ : <built-in method __new__ of type object at 0x108a69d20> 
__reduce__ : <method '__reduce__' of 'object' objects> 
__reduce_ex__ : <method '__reduce_ex__' of 'object' objects> 
__repr__ : <slot wrapper '__repr__' of 'object' objects> 
__setattr__ : <slot wrapper '__setattr__' of 'object' objects> 
__sizeof__ : <method '__sizeof__' of 'object' objects> 
__str__ : <slot wrapper '__str__' of 'object' objects> 
__subclasshook__ : <built-in method __subclasshook__ of type object at 0x7faa994086e8> 
__weakref__ : <attribute '__weakref__' of 'Employee' objects> 
empCount : 0 
Verwandte Themen