Re: Accessing variables in __init__.py

2012-10-16 Thread Gaudha
On Tuesday, October 16, 2012 3:41:55 PM UTC+5:30, Marco Nawijn wrote:
> On Tuesday, October 16, 2012 10:48:17 AM UTC+2, Gaudha wrote:
> 
> > my_package/
> 
> > 
> 
> >   __init__.py
> 
> > 
> 
> >   my_module1.py
> 
> > 
> 
> >   my_module2.py
> 
> > 
> 
> >   variables.py
> 
> > 
> 
> > 
> 
> > 
> 
> > I want to define common variables in __init__.py and use the namespace in 
> > my_module1.py or my_module2.py. Defining it is not a problem. How can call 
> > it from my modules?
> 
> > 
> 
> > 
> 
> > 
> 
> > If I define them in a module (say, variables.py), I can call them by 
> > importing variables.py in other modules. How can it be done if I define it 
> > in __init__.py?
> 
> > 
> 
> > 
> 
> > 
> 
> > It may be a silly query as I am newbie in Python. But, I would be grateful 
> > to get help.
> 
> 
> 
> Hi,
> 
> 
> 
> If you store the variables in __init__.py, you can import them from the 
> package. So in your case suppose __init__.py contains:
> 
> a = 10
> 
> b = {1 :"Hello", 2: "World" }
> 
> 
> 
> Than if you import my_package, you can access the variables as follows 
> (interactive IPython session):
> 
> 
> 
> In [1]: import my_package
> 
> 
> 
> In [2]: my_pack
> 
> my_package   my_package/  
> 
> 
> 
> In [2]: my_package.
> 
> my_package.a  my_package.b  
> 
> 
> 
> In [2]: my_package.a
> 
> Out[2]: 10
> 
> 
> 
> In [3]: my_package.b
> 
> Out[3]: {1: 'Hello', 2: 'World'}
> 
> 
> 
> In [4]:

Yea. I got it. It was a new information for me. A module in a package can 
import its own mother package to call the variables in __init__.

Is it funny or an extraordinary feature? Anyway. I felt it as something weird. 
Guido should have done it something like how 'self' behaves in classes.
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: Accessing variables in __init__.py

2012-10-16 Thread Marco Nawijn
On Tuesday, October 16, 2012 10:48:17 AM UTC+2, Gaudha wrote:
> my_package/
> 
>   __init__.py
> 
>   my_module1.py
> 
>   my_module2.py
> 
>   variables.py
> 
> 
> 
> I want to define common variables in __init__.py and use the namespace in 
> my_module1.py or my_module2.py. Defining it is not a problem. How can call it 
> from my modules?
> 
> 
> 
> If I define them in a module (say, variables.py), I can call them by 
> importing variables.py in other modules. How can it be done if I define it in 
> __init__.py?
> 
> 
> 
> It may be a silly query as I am newbie in Python. But, I would be grateful to 
> get help.

Hi,

If you store the variables in __init__.py, you can import them from the 
package. So in your case suppose __init__.py contains:
a = 10
b = {1 :"Hello", 2: "World" }

Than if you import my_package, you can access the variables as follows 
(interactive IPython session):

In [1]: import my_package

In [2]: my_pack
my_package   my_package/  

In [2]: my_package.
my_package.a  my_package.b  

In [2]: my_package.a
Out[2]: 10

In [3]: my_package.b
Out[3]: {1: 'Hello', 2: 'World'}

In [4]: 

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


Accessing variables in __init__.py

2012-10-16 Thread Gaudha
my_package/
  __init__.py
  my_module1.py
  my_module2.py
  variables.py

I want to define common variables in __init__.py and use the namespace in 
my_module1.py or my_module2.py. Defining it is not a problem. How can call it 
from my modules?

If I define them in a module (say, variables.py), I can call them by importing 
variables.py in other modules. How can it be done if I define it in __init__.py?

It may be a silly query as I am newbie in Python. But, I would be grateful to 
get help.
-- 
http://mail.python.org/mailman/listinfo/python-list