Learning Python, 2nd Edition by Mark Lutz, David Ascher The following errata were *corrected* in the 11/04 reprint: Here's a key to the markup: [page-number]: serious technical mistake {page-number}: minor technical mistake : important language/formatting problem (page-number): language change or minor formatting problem {71} last line; "... the first item in the list L." NOW READS: "... the first item in the list L1." {75} Table 5-1 (continued), line 5 from bottom; "S2.find('pa')" NOW READS: "s2.find('pa')" {111} 2nd paragraph; dict([('name,'bob'), ('age',30)]) NOW READS: dict([('name','bob'), ('age',30)]) [214] in function min1 ; if arg < args: NOW READS: if arg < res: {214} 3rd bullet note; "The third converts from tuple to list with the built-in tuple call, ..." NOW READS: "The third converts from tuple to list with the built-in list call, ..." {457} class Stack: code; self.push and self.pop BOTH NOW REFERENCE self._data, not just data {464, 468, 471} in code snippet; ", string" in the import statement of these examples HAS BEEN DELETED. {470} last line in 1st code snippet; Previously the last line of this code was indented too far. "# Process character 'next'." HAS BEEN MOVED 4 spaces to the left to correct this error. {475} 1st parag under Specific Internet Protocols; "smptlib" NOW READS: "smtplib"