When a function is part of a class, you pass self to it as a parameter. Example:
class Myclass(): def function(self):To call variables that can be used throughout the class in any functions in that class, I would put self before the variable name. Example:
class Myclass(): def function(self): self.var = "Hello world!" def AnotherFunction(self): print("The variable value is: %s." % self.var)To call a function from another function, and there both in the same class, I use self. Example:
class Myclass(): def Add(x, y): return (x+y) def TestAddFunction(self): x = 4 y = 3 print (self.Add(x, y)) If I want the function to not be a part of the class I would do: def function():Now to answer your questions about underscores, Edward already answered part of it. When you create a directory in your python source files, these are called packages. To let python know that it is a package, you must put an __init__.py file in that directory. This can be a blank file or tell python what to automatically import when that package is imported in another file.
HTH Haden On 12/27/2009 5:13 PM, Alex Hall wrote:
Okay, but (A) I did not think Python had constructor methods and (B) why do I always see methodName(self): like in your example?Have a great day, Alex New email address: mehgcap@xxxxxxxxx ----- Original Message ----- From: "edward" <personal.edward@xxxxxxxxx> To: <programmingblind@xxxxxxxxxxxxx> Sent: Sunday, December 27, 2009 17:11 Subject: RE: python: what's with the underscores?Two underscores signify either a constructor method or a built in method I think. Like the str method. If you want to define string formatting with your class its defined by two underscores before and after the method name.example __str__(self): -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Alex Hall Sent: Sunday, December 27, 2009 3:58 PM To: Blind Programming List Subject: python: what's with the underscores? In python, why are some method names surrounded by two underscores? Evensome filenames have these two underscores, though I imagine that is more of a convention than anything else. What do the underscores mean, if anything?Have a great day, Alex New email address: mehgcap@xxxxxxxxx __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind__________View the list's information and change your settings at //www.freelists.org/list/programmingblind
__________View the list's information and change your settings at //www.freelists.org/list/programmingblind