Try pkg_resources.resource_string or pkg_resources.resource_file - it allows you to retrieve any object in an egg as a string or file-like object. :-) -----Original Message----- From: distutils-sig-bounces+fadhley.salim=uk.calyon.com@python.org [mailto:distutils-sig-bounces+fadhley.salim=uk.calyon.com@python.org] On Behalf Of skip@pobox.com Sent: 10 September 2008 12:14 To: distutils-sig@python.org Subject: [Distutils] Getting source from __file__ in egg? If I have a package installed as a zip file egg and ask for its __file__ I might get a reference which looks like a normal file system path but isn't: % python Python 2.4.5 (#4, Apr 12 2008, 09:09:16) [GCC 3.4.1] on sunos5 Type "help", "copyright", "credits" or "license" for more information. >>> import magnitude >>> magnitude.__file__ '/opt/app/g++lib6/python-2.4/lib/python2.4/site-packages/magnitude-0.9.3 -py2.4.egg/magnitude.pyc' >>> magnitude.__file__[:-1] '/opt/app/g++lib6/python-2.4/lib/python2.4/site-packages/magnitude-0.9.3 -py2.4.egg/magnitude.py' >>> import os >>> os.path.exists(magnitude.__file__[:-1]) False How do I actually lay my hands on the .py file source for the magnitude module in this case? Do I have to recognize somehow that .../magnitude-0.9.3-py2.4.egg is a zip archive and resort to extracting the Python source with the zipfile module? Thx, Skip Montanaro _______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org http://mail.python.org/mailman/listinfo/distutils-sig This email does not create a legal relationship between any member of the Crédit Agricole group and the recipient or constitute investment advice. The content of this email should not be copied or disclosed (in whole or part) to any other person. It may contain information which is confidential, privileged or otherwise protected from disclosure. If you are not the intended recipient, you should notify us and delete it from your system. Emails may be monitored, are not secure and may be amended, destroyed or contain viruses and in communicating with us such conditions are accepted. Any content which does not relate to business matters is not endorsed by us. Calyon is authorised by the Commission Bancaire in France and regulated by the Financial Services Authority for the conduct of business in the United Kingdom. Calyon is incorporated in France with limited liability and registered in England & Wales. Registration number: FC008194. Registered office: Broadwalk House, 5 Appold Street, London, EC2A 2DA.