Back To Course Home
Python 3: An interactive deep dive
0% completed
Your First Python Program
Diving InDeclaring FunctionsWriting Readable CodeThe import Search PathEverything Is An ObjectIndenting CodeExceptionsUnbound VariablesEverything is Case-SensitiveRunning ScriptsFurther Reading
Native Datatypes
Diving InBooleansNumbersListsTuplesSetsDictionariesNoneFurther Reading
Comprehensions
Diving InWorking With Files And DirectoriesList ComprehensionsDictionary ComprehensionsSet ComprehensionsFurther Reading
Strings
Some Boring Stuff You Need To Understand Before You Can Dive InUnicodeDiving InFormatting StringsOther Common String MethodsStrings vs. BytesPostscript: Character Encoding Of Python Source CodeFurther Reading
Regular Expressions
Diving InCase Study: Street AddressesCase Study: Roman NumeralsUsing The {n,m} SyntaxVerbose Regular ExpressionsCase study: Parsing Phone NumbersSummary
Closures & Generators
Diving InI Know, Let’s Use Regular Expressions!A List Of FunctionsA List Of PatternsA File Of PatternsGeneratorsFurther Reading
Classes & Iterators
Diving InDefining ClassesInstantiating ClassesInstance VariablesA Fibonacci IteratorA Plural Rule IteratorFurther Reading
Advanced Iterators
Diving In
Finding all occurrences of a pattern
Finding the unique items in a sequence
Making Assertions
Generator expressions
Calculating Permutations… The Lazy Way!
Other Fun Stuff in the itertools Module
A New Kind Of String Manipulation
Evaluating Arbitrary Strings As Python Expressions
Putting It All Together
Further Reading
Unit Testing
(Not) Diving InA Single Question“Halt And Catch Fire”More Halting, More FireAnd One More Thing…A Pleasing SymmetryMore Bad Input
Refactoring
Diving InHandling Changing RequirementsRefactoringSummary
Files
Diving In
Reading From Text Files
Writing to Text Files
Binary Files
Stream Objects From Non-File Sources
Standard Input, Output, and Error
Further Reading
XML
Diving InA 5-Minute Crash Course in XMLThe Structure Of An Atom FeedParsing XMLSearching For Nodes Within An XML DocumentGoing Further With lxmlGenerating XMLParsing Broken XMFurther Reading
Serializing Python Objects
Diving InSaving Data to a Pickle FileLoading Data from a Pickle FilePickling Without a FileBytes and Strings Rear Their Ugly Heads AgainDebugging Pickle FilesSerializing Python Objects to be Read by Other LanguagesSaving Data to a JSON FileMapping of Python Datatypes to JSONSerializing Datatypes Unsupported by JSONLoading Data from a JSON FileFurther Reading
HTTP Web Services
Diving InFeatures of HTTPHow Not To Fetch Data Over HTTPWhat’s On The Wire?Introducing httplib2Beyond HTTP GETBeyond HTTP POSTFurther Reading
Case Study: Porting chardet to Python 3
Diving InWhat is Character Encoding Auto-Detection?Introducing The chardet ModuleRunning 2to3A Short Digression Into Multi-File ModulesFixing What 2to3 Can’tSummary
Packaging Python Libraries
Diving InThings Distutils Can’t Do For YouDirectory StructureWriting Your Setup ScriptClassifying Your PackageSpecifying Additional Files With A ManifestChecking Your Setup Script for ErrorsCreating a Source DistributionCreating a Graphical InstallerAdding Your Software to The Python Package IndexThe Many Possible Futures of Python PackagingFurther Reading
Appendix : Where To Go From Here
Things to ReadWhere To Look For Python 3-Compatible CodeLicense

Further Reading

  1. Reading and writing files in the Python.org tutorial
  2. io module
  3. Stream objects
  4. Context manager types
  5. sys.stdout and sys.stderr
  6. fuse on Wikipedia

Get hands-on with 1400+ tech skills courses.