Dave wrote: > Anyone familiar with PHP? I'm trying to make a translation. In PHP you > can get the current object's name by going like this: > > get_class(item) == 'ClassName' > > I've tried type(item), but since I can't be sure if I'll be in __main__ > or as a child object, I can't guarantee what that value will return, so > I can't just manipulate that value as a string. > Type doesn't return a string, it returns a reference to a class object.
You look like you want to test if the class of an object is <some specific class>. For that purpose, check isinstance. > Is there a simple way to get the current object's name? You would think > __name__ would work, right? It doesn't. > What do you call "the current object's name"? A python object usually has no name per se (only functions and classes do have one I think). > Now here's another, similar one: > > You can reference an object's parent object directly in PHP, like so: > > //note the charming use of semi-colon. isn't it cute? > parent::__construct( > $stuffInAWeirdSyntaxThatDoesntMeanAnythingWhenYouReadIt); > > I'd like to avoid passing a reference to an object's parent in > __init__, but is there a built in way in Python to say "You, Parent > Object, do ...stuff!" > > Thanks! > I guess it's a parent in the inheritance meaning of the term. If so, you can use either the call-by-class syntax or the `super` construct. For the call-by-class, see the Python tutorial, chapter 9.5 "Inheritance", last paragraph. For the `super` construct, check the help on the subject, and the document "Unifying types and classes in Python 2.2" by the BDFL (http://www.python.org/2.2.3/descrintro.html) -- http://mail.python.org/mailman/listinfo/python-list