Alan Illeman wrote: > Win2k Pro - installed python: ok > > Example 2.1 from DiveIntoPython tutorial copied > and pasted into "Pythonwin - Python IDE and GUI > Framework for Windows." > -------------------------------------------------------------- > def buildConnectionString(params): > """Build a connection string from a dictionary of parameters. > > Returns string.""" > return ";".join(["%s=%s" % (k, v) for k, v in params.items()]) > > if __name__ == "__main__": > myParams = {"server":"mpilgrim", \ > "database":"master", \ > "uid":"sa", \ > "pwd":"secret" \ > } > print buildConnectionString(myParams) > -------------------------------------------------------------- > > produces.. > > ================================================= >>>> C:\Python25\Lib\site-packages\pythonwin\pywin\mfc\object.py: > 23: DeprecationWarning: raising a string exception is deprecated > raise win32ui.error, "The MFC object has died." > pwd=secret;database=master;uid=sa;server=mpilgrim > ================================================= > > DiveIntoPython example 2.1 result: > server=mpilgrim;uid=sa;database=master;pwd=secret > > ..which I realise is essentially the same (except for order). > > I haven't ever (not that I remember) installed MFC. > > Help! > MFC is the Microsoft Foundation Classes, used by many Windows programmers to create applications. Mark Hammond, the author of PythonWin, used them to build that.
I am hugely surprised to find that PythonWin apparently raises string exceptions: this is an old programming technique, which should have been removed from anything designed to run on Python 2.5. That is why you see the message: it's only a warning, so you can ignore it. I am copying Mark on this message in case he's unaware of the issue. Don't be surprised if the ordering of the elements in a dict is different between Python versions - a dict is an unordered collection, and so the ordering of the elements isn't supposed to be predictable. Mark Pilgrim probably used an earlier version of Python to prepare the examples, that text has been around some time (though it's still good). regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC http://www.holdenweb.com/ -- http://mail.python.org/mailman/listinfo/python-list