Skip to main content
PYTHON - 101
Ahmet SEĞMEN
Agenda
• What is the Python ?
• Creator
• The Zen of Python
• Interpreters
• Package Management
• Cross – Platform
• Why Python ?
• Disadvantages of Python
• Python Frameworks
• Commercial Uses
• Popularity
What is the Python ?
• Open source
• Multi-paradigm programming language
• High-level programming language
• Readability
• Automatic memory management
• Large and comprehensive standard library
• Available many operating systems
Creator
• Created by Guidio van Rossum
• Start as hobby project
• First released in 1991, 1.0
published in 1994
• Name came from “Monty
Python” comedy program
The Zen of Python, by Tim Peters
• Beautiful is better than ugly.
• Explicit is better than implicit.
• Simple is better than complex.
• Complex is better than complicated.
• Flat is better than nested.
http://docs.python-guide.org/en/latest/writing/style/#zen-of-python
Interpreters
• CPython: Reference implementation
• IronPython: .Net and Mono platforms
• Jython: Java platforms
• PyPy: Alternative implementation, coded in python (faster in some
cases)
• CLPython: Comon Lisp implementation
Package Management
• Use pip to install packages from PyPI*
• Use virtualenv, or venv to isolate application specific dependencies
from a shared Python installation.
• If you’re looking for management of fully integrated cross-platform
software stacks, consider:
buildout: primarily focused on the web development community
Spack, Hashdist, or conda: primarily focused on the scientific
community.
*PyPI is the default package index for the Python community. It is open to all Python developers to consume and
distribute their distributions.
Cross - Platform
Why Python ?
• Open Source
• Readability
• Easy learn
• Interpreter language
• Functional language
• Object Oriented Programming - driven
• Large scientific library
Why Python ?
• Embeddable other language
• Fast write
• Virtual environment
• Package management
• Automatic memory management
• Easy to refactor
• With the introduction of Raspberry Pi
• Gives rise to quick development by using less code.
Disadvantages of Python
• Python is slow
• Python is not a very good language for mobile development
• Python is not a good choice for memory intensive tasks
• Has limitations with database access
• Python is not good for multi-processor/multi-core work
Python Frameworks
• Django
• Pyramid
• Flask
• Tornado
• Google App Engine
• Tkinder
• wxPython
• PyQt
Commercial Uses
Application Web Application
Commercial Uses
Games 3D Scripting / Animation
Commercial Uses
• Social Media • Other Uses
Popularity
*TIOBE Index for March 2017
THANKS
Q&A