From: Michael F. <Mic...@tb...> - 2004-12-14 11:14:53
|
Well sort of....... More a request for comments really - to see if anyone is interested in this. http://www.voidspace.org.uk/atlantibots/pythonutils.html#testenv I've created a script that will build a 'test environment'. Windoze(tm) only as it uses py2exe. It scans your Python\Lib folder and builds a script that *fakes* an import of every file. This *more* or less amounts to everything in the standard lib. There is then another script that turns this into a python executable. The result is an executable that will run any python script. It gives sensible values to sys.path, sys.argv and __file__. This is useful for two purposes : 1) Easily have test environments for multiple versions of python - to test your scripts. 2) Run any python script on a machine without python installed. Usage : testenv <python file> arg1 arg2... Which should be the equivalent of : python <python file> arg1 arg2... Sample output : (Built with Python 2.4 - then 2.3 - prints sys.version first) ######## D:\New Folder\testenv>testenv test.py arg1 arg2 arg3 2.4 (#60, Nov 30 2004, 11:49:19) [MSC v.1310 32 bit (Intel)] sys.path = ['D:\\New Folder\\testenv\\library.zip', 'D:\\New Folder\\testenv', ' D:\\New Folder\\testenv'] sys.argv = ['D:\\New Folder\\testenv\\test.py', 'arg1', 'arg2', 'arg3'] import Tkinter # succeeded import dummylibrary # succeeded D:\New Folder\testenv> ########## D:\Python Projects\modules in progress\py2exe-testenv\dist>testenv test.py arg1 arg2 2.3.4 (#53, May 25 2004, 21:17:02) [MSC v.1200 32 bit (Intel)] sys.path = ['D:\\Python Projects\\modules in progress\\py2exe-testenv\\dist\\lib \\shared.zip', 'D:\\Python Projects\\modules in progress\\py2exe-testenv\\dist', 'D:\\Python Projects\\modules in progress\\py2exe-testenv\\dist'] sys.argv = ['D:\\Python Projects\\modules in progress\\py2exe-testenv\\dist\\tes t.py', 'arg1', 'arg2'] import Tkinter # succeeded import dummylibrary # succeeded D:\Python Projects\modules in progress\py2exe-testenv\dist> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ I'm sure this can be improved in lots of ways - only about an hours hacking or so - but already useful to me. Comments and suggestions for improvements welcomed. Regards, Fuzzy -- Michael Foord Sales Daventry Depot TBS Builders Merchants Ltd Hackwood Road Daventry Northants NN11 4ES Tel : 01327 877378, Fax : 01327 300598, Mobile : 07740 774204 http://www.TBSMerchants.co.uk http://www.voidspace.org.uk or http://www.fuchsiashockz.co.uk http://groups.yahoo.com/group/void-shockz --- Everyone has talent. What is rare is the courage to follow talent to the dark place where it leads. -Erica Jong Ambition is a poor excuse for not having sense enough to be lazy. -Milan Kundera ----- This email is confidential & intended solely for the use of the individual to whom it is addressed. Any views presented are solely those of the author & do not necessarily represent those of Towcester Building Supplies. If you are not the intended recipient, be advised that you have received this email in error & that any use, dissemination, forwarding, printing, or copying of this email is strictly prohibited. Any files attached to this email will have been checked with virus software before transmission. However, you should carry out your own virus check before opening any attachment. Towcester Building Supplies accepts no liability for any loss or damage which may be caused by software viruses. |