their version-specific defaultsalways use binary-mode files for pickled data--the following works the same in python and ximport pickle pickle dump([ ]open('temp''wb')pickle load(open('temp''rb')[ version neutral and required in because almost all programs let python pickle and unpickle objects automatically and do not deal with the content of pickled data itselfthe requirement to always use binary file modes is the only significant incompatibility in python ' newer pickling model see reference books or python' manuals for more details on object pickling xml parsing tools xml is tag-based language for defining structured informationcommonly used to define documents and data shipped over the web although some information can be extracted from xml text with basic string methods or the re pattern modulexml' nesting of constructs and arbitrary attribute text tend to make full parsing more accurate because xml is such pervasive formatpython itself comes with an entire package of xml parsing tools that support the sax and dom parsing modelsas well as package known as elementtree-- python-specific api for parsing and constructing xml beyond basic parsingthe open source domain provides support for additional xml toolssuch as xpathxqueryxsltand more xml by definition represents text in unicode formto support internationalization although most of python' xml parsing tools have always returned unicode stringsin python their results have mutated from the unicode type to the general str string type--which makes sensegiven that ' str string is unicodewhether the encoding is ascii or other we can' go into many details herebut to sample the flavor of this domainsuppose we have simple xml text filemybooks xml ~ learning python programming python python pocket reference 'reilly media and we want to run script to extract and display the content of all the nested title tagsas followslearning python programming python python pocket reference other string tool changes in