full name and address pairs in your email addresses this works just because the script employs email utilities described earlier to split up addresses and fully parse to allow commas as both separators and name characters the followingfor examplewould send to two and three recipientsrespectivelyusing mostly full address formats[pymailaction(ildsmq? from"moi to"pp "lu,tz[pymailaction(ildsmq? fromthe book to"pp "lu,tzlutz@rmi net finallyif you are running this liveyou will also find the mail save file on your machinecontaining the one message we asked to be saved in the prior sessionit' simply the raw text of saved emailswith separator lines this is both human and machinereadable--in principleanother script could load saved mail from this file into python list by calling the string object' split method on the file' text with the separator line as delimiter as shown in this bookit shows up in file :\temp\savemail txtbut you can configure this as you like in the mailconfig module the mailtools utility package the email package used by the pymail example of the prior section is collection of powerful tools--in factperhaps too powerful to remember completely at the minimumsome reusable boilerplate code for common use cases can help insulate you from some of its detailsby isolating module usagesuch code can also ease the migration to possible future email changes to simplify email interfacing for more complex mail clientsand to further demonstrate the use of standard library email toolsi developed the custom utility modules listed in this section-- package called mailtools mailtools is python modules packagea directory of codewith one module per tool classand an initialization module run when the directory is first imported this package' modules are essentially just wrapper layer above the standard library' email packageas well as its poplib and smtplib modules they make some assumptions about the way email is to be usedbut they are reasonable and allow us to forget some of the underlying complexity of the standard library tools employed in nutshellthe mailtools package provides three classes--to fetchsendand parse email messages these classes can be used as superclasses in order to mix in their methods to an application-specific classor as standalone or embedded objects that export their methods for direct calls we'll see these classes deployed both ways in this text as simple example of this package' tools in actionits selftest py module serves as self-test script when runit sends message from youto youwhich includes the selftest py file as an attachment it also fetches and displays some mail headers and client-side scripting