Python was created by Guido van Rossum in 1990 and draws influences from languages like ABC, Lisp, Perl, and Haskell. It is an interpreted, high-level, general-purpose programming language that is designed to be highly readable. Python emphasizes code readability by utilizing syntax like indentation instead of curly braces and omitting characters like semicolons. It supports multiple programming paradigms including object-oriented, imperative and functional programming.
3. History Created by Guido von Rossum in 1990 (BDFL) and named after Monty Python's Flying Circus Influences: ABC, Lisp, Perl, Haskell and Java Developed and supported by a large team of volunteers - Python Software Foundation Major implementations: CPython, Jython, Iron Python, PyPy
4. E.g. Projects with Python Websites: Google, YouTube, Yahoo Groups & Maps, CIA.gov Systems: NASA, LALN, CERN, Rackspace Games: Civilization 4, Quark (Quake Army Knife) Mobile phones: Nokia S60 (Symbian), PythonCE P2P: BitTorrent
5. What is Python Very high level scripting-cum-programming language (almost like pseudo-code) Multi-paradigm: OOP, Structured, Functional, Aspect-oriented Multi-platform Dynamic Typing Automatic garbage collector for memory management
6. Philosophy “ there is one -and preferably only one- obvious way to do it” “ The long-term usefulness of a language comes not in its ability to support clever hacks, but from how well and how unobtrusively it supports the day-to-day work of programming. The day-to-day work of programming consists not of writing new programs, but mostly reading and modifying existing ones.” - Eric Raymond, 'Why Python?' 2003
8. Syntax Types: str, unicode list, tuple, set dict int, float, complex, bool Conditions: if, elif, else Loops: for...in while
9. Why Python? Readability, maintainability Fast development and all just works the first time... Dynamic typing and automatic memory management Paradigm of your choice Extensive library
10.
11. Some problems Scripting-like language and compiled and runtime - hence slower than C/C++ and slightly slower than Java Memory economy hard to achieve (high level data-structures) Multiprocessing and Global interpreter lock