import_checker 1.1

import_checker checks Python programs for circular (or recursive) imports.

  Add it to your Download Basket!

 Add it to your Watch List!

0/5

Rate it!
send us
an update
LICENSE TYPE:
GPL (GNU General Public License) 
USER RATING:
UNRATED
  0.0/5
DEVELOPED BY:
Walter de Jong
HOMEPAGE:
www.ka.sara.nl
CATEGORY:
ROOT \ Programming \ Bug Tracking
1 import_checker Screenshot:
import_checker
import_checker checks Python programs for circular (or recursive) imports.

Python is a fine programming language. There is one horrendous thing with it though, that bites even the most experienced python programmers every now and then: the scope of variables.

We've been taught to use the keyword 'global', and heartily do so. Still, problems occur when running into a "recursive import" problem.

Example:

### program A ###

import B

var = 0

if __name__ == '__main__':
var = 10
B.doit()

### module B ###

import A

def doit():
print A.var

### end of example ###

Module B will see A.var having value 0, even though in program A we assigned it a value of 10. Python is right and it is not a python bug, but it is $#@! confusing and it is being caused by the recursive import; A imports B, and B imports A.

The import_checker.py is a tool that detects recursive imports.

This problem only occurs for global variables in modules.

The best way of solving the problem is to put 'var' into a new module C,
and import C from both A and B.

Requirements:

Python

What's New in This Release:

The Python source files are now read using the shlex lexical scanner.

Last updated on October 24th, 2006

#checks Python programs #circular imports #Python checker #import_checker #checks #Python #programs

Add your review!

SUBMIT