WorldViz User Forum

WorldViz User Forum (https://forum.worldviz.com/index.php)
-   Vizard (https://forum.worldviz.com/forumdisplay.php?f=17)
-   -   Working w/ multiple scripts (https://forum.worldviz.com/showthread.php?t=77)

FlyingWren 10-16-2003 11:53 AM

Working w/ multiple scripts
 
I have a main .py script and a modular .py script that contains a class I have been developing. While working, I have both python files loaded in Vizard's editor, and the main file imports the modular one.

Sometimes it seems that when I make changes in my modular file, the main python file doesn't immediately recognize them. For instance, if I add a data member called "speed' to a class in the modular file and then try to refer to the 'speed' variable in the main script, I get a "hey, the speed variable doesn't exist!"-type error.

Reloading both files in the Vizard editor gets it to work, though - it's as if the scripts gets recompiled/rechecked so that things work again.

But surely there is a better way to do this than reloading the scripts every time I make a change, isn't there? :confused:

farshizzo 10-16-2003 12:01 PM

I have the same exact problem too. The reason is that when you type "import SomeModule", python checks if that module is already imported and ignores it if it is. So even if you make a change to it python will see that it has been already imported and won't do it again. The easiest way to get around this is to do the following instead of importing it:
Code:

try:
    reload(MyModule)
except:
    import MyModule

The reload command forces python to re-import the module, so new changes will take affect.

FlyingWren 10-16-2003 12:19 PM

Will that same code still work if I am using
from MyModule import *

instead of just
import MyModule

or does it need a slightly different syntax?

farshizzo 10-16-2003 01:05 PM

It will need different syntax. The following should work:
Code:

import MyModule
reload(MyModule)
from MyModule import *



All times are GMT -7. The time now is 10:33 PM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright 2002-2023 WorldViz LLC