How modules work in Python
Larry Hudson
orgnut at yahoo.com
Tue Nov 18 03:14:02 EST 2014
First, I'll repeat everybody else: DON'T TOP POST!!!
On 11/16/2014 04:41 PM, Abdul Abdul wrote:
> Dave,
>
> Thanks for your nice explanation. For your answer on one of my questions:
>
> *Modules don't have methods. open is an ordinary function in the module.*
>
> Isn't "method" and "function" used interchangeably? In other words, aren't they the same thing?
> Or, Python has some naming conventions here?
>
You've already received answers to this, but a short example might clarify the difference:
#------- Code --------
# Define a function
def func1():
print('This is function func1()')
# Define a class with a method
class Examp:
def func2(self):
print('This is method func2()')
# Try them out
obj = Examp() # Create an object (an instance of class Examp)
func1() # Call the function
obj.func2() # Call the method through the object
func2() # Try to call the method directly -- Error!
#------- /Code --------
This code results in the following:
This is function func1()
This is method func2()
Traceback (most recent call last):
File "fun-meth.py", line 14, in <module>
func2()
NameError: name 'func2' is not defined
-=- Larry -=-
More information about the Python-list
mailing list