Sorry, that should have been "xml.parsers.expat" [EMAIL PROTECTED] wrote: > Hi, c.l.p.'ers- > > I am having a problem with the import of xml.parsers.expat that has > gotten me completely stumped. I have two programs, one a PyQt program > and one a command line (text) program that both eventually call the > same code that imports xml.parsers.expat. Both give me different > results... > > The code that gets called is (print statements have been added for > debugging): > > # this is status.py > import xml.parsers.expat > print xml > print xml.parsers > print dir(xml.parsers) > print repr(xml.parsers.expat.ExpatError) > print xml.parsers.expat > > if info_device_status: > try: > device_status = > utils.XMLToDictParser().parseXML(info_device_status) > log.debug_block("info_device_status", info_device_status) > log.debug(device_status) > except xml.parsers.expat.ExpatError: > log.error("Device Status XML parse error") > device_status = {} > > if info_ssp: > try: > ssp = utils.XMLToDictParser().parseXML(info_ssp) > log.debug_block("info_spp", info_ssp) > log.debug(ssp) > except xml.parsers.expat.ExpatError: > log.error("SSP XML parse error") > ssp = {} > > When I run this code from my console program, it prints out: > > <module '_xmlplus' from > '/usr/lib/python2.4/site-packages/_xmlplus/__init__.pyc'> > <module 'xml.parsers' from > '/usr/lib/python2.4/site-packages/_xmlplus/parsers/__init__.pyc'> > ['__all__', '__builtins__', '__doc__', '__file__', '__name__', > '__path__', 'expat', 'pyexpat'] > <class xml.parsers.expat.ExpatError at 0x2aaaac6c6950> > <module 'xml.parsers.expat' from > '/usr/lib/python2.4/site-packages/_xmlplus/parsers/expat.pyc'> > > and all is well... > > However, from the PyQt program I get: > > <module '_xmlplus' from > '/usr/lib/python2.4/site-packages/_xmlplus/__init__.pyc'> > <module '_xmlplus.parsers' from > '/usr/lib/python2.4/site-packages/_xmlplus/parsers/__init__.pyc'> > ['__all__', '__builtins__', '__doc__', '__file__', '__name__', > '__path__', 'sgmlop'] > Traceback (most recent call last): > > [...snip...] > > File > "/home/dwelch/tip/linux-imaging-and-printing/src/base/status.py", line > 980, in StatusType6 > print repr(xml.parsers.expat.ExpatError) > AttributeError: 'module' object has no attribute 'expat' > > Somehow, the import has brought in "_xmlplus" rather than "xml", and > "expat" is no longer in the xml.parsers module. This is on the same > machine with the same user account, running each program "back to > back". Running each program as a different user made no difference. > > Everything is also OK if I manually enter the import and print commands > into a Python >>> prompt. > > Any help much appreciated! > > -Don
-- http://mail.python.org/mailman/listinfo/python-list