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

Python 101

  • 1.
  • 2.
    Agenda • What isthe Python ? • Creator • The Zen of Python • Interpreters • Package Management • Cross – Platform • Why Python ? • Disadvantages of Python • Python Frameworks • Commercial Uses • Popularity
  • 3.
    What is thePython ? • Open source • Multi-paradigm programming language • High-level programming language • Readability • Automatic memory management • Large and comprehensive standard library • Available many operating systems
  • 4.
    Creator • Created byGuidio van Rossum • Start as hobby project • First released in 1991, 1.0 published in 1994 • Name came from “Monty Python” comedy program
  • 5.
    The Zen ofPython, 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
  • 6.
    Interpreters • CPython: Referenceimplementation • IronPython: .Net and Mono platforms • Jython: Java platforms • PyPy: Alternative implementation, coded in python (faster in some cases) • CLPython: Comon Lisp implementation
  • 7.
    Package Management • Usepip 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.
  • 8.
  • 9.
    Why Python ? •Open Source • Readability • Easy learn • Interpreter language • Functional language • Object Oriented Programming - driven • Large scientific library
  • 10.
    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.
  • 11.
    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
  • 12.
    Python Frameworks • Django •Pyramid • Flask • Tornado • Google App Engine • Tkinder • wxPython • PyQt
  • 13.
  • 14.
    Commercial Uses Games 3DScripting / Animation
  • 15.
    Commercial Uses • SocialMedia • Other Uses
  • 16.
  • 17.

Editor's Notes

  • #4 OOP – Script and functional language Garbage collector Python community
  • #5 From netherland 63 years old cristmants
  • #6 Güzel çirkinden iyidir Açık üstü-kapalıdan iyidir Basit karmaşıktan iyidir Kompleks karmaşık olmaktan daha iyidir Düz içiçe geçmişten iyidir.
  • #7 Cpython c89 standartından dolayı cros platform. Pypy: hızlandırır, memory kullanımını arttırır. (JIT(just in time)), stackless
  • #10 Akademik ortamlarda kullanımı oldukça yaygındır.