By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
464,561 Members | 889 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 464,561 IT Pros & Developers. It's quick & easy.

Module clarification

P: n/a
Hi.
I'm a Java guy and I'm playing around Python these days...
In Java, we organize our classes into packages and then jarring the
packages into JAR files.
What are modules in Python?
What is the equivalent of modules in Java?
Please correct me if I'm wrong:
I saved my Python code under the file Wow.py
Wow.py is now a module and I can use it in other Python code:
import Wow

Thanks.
Jul 28 '08 #1
Share this Question
Share on Google+
7 Replies

P: n/a
On Jul 28, 9:54*am, Hussein B <hubaghd...@gmail.comwrote:
Hi.
I'm a Java guy and I'm playing around Python these days...
In Java, we organize our classes into packages and then jarring the
packages into JAR files.
What are modules in Python?
An importable or runable (i.e. script) collection of classes,
functions, variables etc...
What is the equivalent of modules in Java?
Don't know. Not even sure if it exists, but my Java is old and never
been great.
Please correct me if I'm wrong:
I saved my Python code under the file * Wow.py
Wow.py is now a module and I can use it in other Python code:
import Wow
Indeed, you can now access things defined in Wow as Wow.foo
Regards
Floris

Jul 28 '08 #2

P: n/a
On Jul 28, 6:55 am, Floris Bruynooghe <floris.bruynoo...@gmail.com>
wrote:
On Jul 28, 9:54 am, Hussein B <hubaghd...@gmail.comwrote:
Hi.
I'm a Java guy and I'm playing around Python these days...
In Java, we organize our classes into packages and then jarring the
packages into JAR files.
What are modules in Python?

An importable or runable (i.e. script) collection of classes,
functions, variables etc...
What is the equivalent of modules in Java?

Don't know. Not even sure if it exists, but my Java is old and never
been great.
Please correct me if I'm wrong:
I saved my Python code under the file Wow.py
Wow.py is now a module and I can use it in other Python code:
import Wow

Indeed, you can now access things defined in Wow as Wow.foo

Regards
Floris
If I have a couple of modules, is there a way to package them? or
there is no such a thing in Python?
Jul 28 '08 #3

P: n/a
Hussein B wrote:
Hi.
I'm a Java guy and I'm playing around Python these days...
In Java, we organize our classes into packages and then jarring the
packages into JAR files.
What are modules in Python?
What is the equivalent of modules in Java?
Read the docs:

http://docs.python.org/tut/node8.html

And read about eggs, the jars of python:

http://peak.telecommunity.com/DevCenter/PythonEggs

Diez
Jul 28 '08 #4

P: n/a
Hussein B <hu********@gmail.comwrote:
If I have a couple of modules, is there a way to package them? or
there is no such a thing in Python?

It sounds rather as though you haven't yet gone through the Python
tutorial. You really should read it, even if you just skim through it to
see what topics are covered. The tutorial explains both modules and
packages: http://docs.python.org/tut/node8.html

What it doesn't cover is that you can import modules or packages directly
from a zip file.

Then read about eggs.

--
Duncan Booth http://kupuguy.blogspot.com
Jul 28 '08 #5

P: n/a
On Jul 28, 4:54*am, Hussein B <hubaghd...@gmail.comwrote:
Hi.
I'm a Java guy and I'm playing around Python these days...
In Java, we organize our classes into packages and then jarring the
packages into JAR files.
What are modules in Python?
What is the equivalent of modules in Java?
I'm new myself, coming from Perl and Java. Take my comments with the
appropriate salt.

Here's my understanding:

1) JARs are a bit of a Java oddity. The other languages I've worked
with don't really combine their packaging method for transport with
their packaging method of access. Put another way, you may get a
zipfile or tarball of library files, but they aren't USED in that
format, they are just transported in that format. You unzip them and
use the compiled libraries directly. Java appears to be unusual
there. I could be wrong (it's a big world), but such is my experience
in the C and Perl worlds.

2) Java also dictates a single class per file (basically). Other
languages do not have that restriction which leads to different
collections. A file in Python (a module) may have several classes, or
just one, or none. A package in Python is a directory containing
modules (and possibly other packages) as well as a __init__.py file.
This means that you cannot have the Java case of two packages offering
the same fully qualified resource, because the namespace is tied to
the filesystem (note you can alter this when importing the packages).

3) Java uses "import" to create a shortcut to the namespace, a
convenience for the programmer that has little to no bearing on the
execution of the code. Namespace is determined by the classloader.
Python uses "import" to declare how a namespace is used by the code
itself, which can be very significant, (For example, Java can access
any fully qualified package without an import statement. Python
cannot access any package until it has been made available by import.)

Hope that helps and is remotely accurate. I'm sure someone will
correct me if I'm wrong.
Jul 28 '08 #6

P: n/a
On Jul 28, 8:11 am, Duncan Booth <duncan.bo...@invalid.invalidwrote:
Hussein B <hubaghd...@gmail.comwrote:
If I have a couple of modules, is there a way to package them? or
there is no such a thing in Python?

It sounds rather as though you haven't yet gone through the Python
tutorial. You really should read it, even if you just skim through it to
see what topics are covered. The tutorial explains both modules and
packages:http://docs.python.org/tut/node8.html

What it doesn't cover is that you can import modules or packages directly
from a zip file.

Then read about eggs.

--
Duncan Boothhttp://kupuguy.blogspot.com
I'm reading "Learning Python, 3rd Edition"
What do you think about it?
Jul 28 '08 #7

P: n/a
Hi Hussein,

Basically a module is a FILE and is considered as a singleton model. Yes
ur wow.py assumption is correct.
I recommend getting Mark Lutz Learning Python book to get you started.

Marcus.CM

Hussein B wrote:
Hi.
I'm a Java guy and I'm playing around Python these days...
In Java, we organize our classes into packages and then jarring the
packages into JAR files.
What are modules in Python?
What is the equivalent of modules in Java?
Please correct me if I'm wrong:
I saved my Python code under the file Wow.py
Wow.py is now a module and I can use it in other Python code:
import Wow

Thanks.
--
http://mail.python.org/mailman/listinfo/python-list


Jul 28 '08 #8

This discussion thread is closed

Replies have been disabled for this discussion.