The Zen of PythonBeautiful Is Better Than UglyExplicit Is Better Than ImplicitSimple Is Better Than ComplexComplex Is Better Than ComplicatedFlat Is Better Than NestedSparse Is Better Than DenseReadability CountsSpecial Cases Aren’t Special Enough to Break the RulesAlthough Practicality Beats PurityErrors Should Never Pass SilentlyUnless Explicitly SilencedIn the Face of Ambiguity, Refuse the Temptation to GuessThere Should Be One—and Preferably Only One—Obvious Way to Do ItAlthough That Way May Not Be Obvious at First Unless You’re DutchNow Is Better Than NeverAlthough Never Is Often Better Than Right NowIf the Implementation Is Hard to Explain, It’s a Bad IdeaIf the Implementation Is Easy to Explain, It May Be a Good IdeaNamespaces Are One Honking Great Idea—Let’s Do More of Those!Don’t Repeat YourselfLoose CouplingThe Samurai PrincipleThe Pareto PrincipleThe Robustness PrincipleBackward CompatibilityThe Road to Python 3.0Taking It With You