Python is a powerful yet easy-to-use programming language developed by Guido van Rossum, first released in 1991. With Python, you can quickly write a small project. But Python also scales up nicely and can be used for mission-critical, commercial applications. If you check out any Python documentation, you may notice an alarming number of references to spam, eggs, and the number 42. These references all pay homage to Monty Python, the English comedy troupe that inspired Pythons name. Even though Guido van Rossum named Python after the group, the official mascot of the language has become the python snake. (Which is really for the best, since it would be pretty hard to fit six British comedians faces on a program icon anyway.) There are a lot of programming languages out there. Whats so great about Python?Python Is Easy to UseThe major goal of any programming language is to bridge the gap between the programmers brain and the computer. Most of the popular languages youve probably heard of, like Visual Basic, C#, and Java, are considered high-level languages, which means that theyre closer to human language than machine language. And they are. But Python, with its clear and simple rules, is even closer to English. Creating Python programs is so straightforward that its been called programming at the speed of thought. Pythons ease of use translates into productivity for professional programmers. Python programs are shorter and take less time to create than programs in many other popular languages. Python Is PowerfulPython has all the power youd expect from a modern programming language. By the end of this book, youll be able to write programs that employ a GUI, process files, and use a variety of data structures. Python is powerful enough to attract developers from around the world as well as companies such as Google, IBM, Industrial Light + Magic, Microsoft, NASA, Red Hat, Verizon, Xerox, and Yahoo. Python is also used as a tool by professional game programmers. Electronic Arts, 2K Games, and the Disney Interactive Media Group all publish games that incorporate PythonPython Is Object-OrientedObject-oriented programming (OOP) is a modern approach to solving problems with computers. It embodies an intuitive method of representing information and actions in a program. Its certainly not the only way to write programs, but, for large projects, its often the best way to go Languages like C#, Java, and Python are all object-oriented. But Python does them one better. In C# and Java, OOP is not optional. This makes short programs unnecessarily complex, and it requires a bunch of explanations before a new programmer can do anything significant. Python takes a different approach. In Python, using OOP techniques is optional. You have all of OOPs power at your disposal, but you can use it when you need it. Got a short program that doesnt really require OOP? No problem. Got a large project with a team of programmers that demands OOP? Thatll work too. Python gives you power and flexibility. Python Is a Glue LanguagePython can be integrated with other languages such as C, C++, and Java. This means that a programmer can take advantage of work already done in another language while using Python. It also means that he or she can leverage the strengths of other languages, such as the extra speed that C or C++ might offer, while still enjoying the ease of development thats a hallmark of Python programming. Python Runs EverywherePython runs on everything from a Palm to a Cray. And if you dont happen to have a supercomputer in the den, you can still run Python on Windows, Macintosh, or Linux machines. And thats just the top of the list. Python programs are platform-independent, which means that regardless of the operating system you use to create your program, itll run on any other computer with Python. So if you write a program on your PC, you can e-mail a copy to your friend who runs Linux or to your aunt who has a Mac, and the program will work (as long as your friend and aunt have Python installed on their computers).Python Has a Strong CommunityMost programming languages have a dedicated newsgroup, but Python also has something called the Python Tutor mailing list, a more informal way for beginning programmers to ask those first questions. Although the list is called tutor, anyone, whether novice or expert, can answer questions. There are other Python communities focused on different areas, but the common element they share is that they tend to be friendly and open. That only makes sense since the language itself is so approachable for beginners. Python Is Free and Open SourcePython is free. You can install it on your computer and never pay a penny. But Pythons license lets you do much more than that. You can copy or modify Python. You can even resell Python if you want (but dont quit your day job just yet). Embracing open-source ideals like this is part of what makes Python so popular and successful.