Python 101

17
PYTHON - 101 Ahmet SEĞMEN

Transcript of Python 101

Page 1: Python 101

PYTHON - 101Ahmet SEĞMEN

Page 2: Python 101

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

Page 3: Python 101

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

Page 4: Python 101

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

Page 5: Python 101

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

Page 6: Python 101

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

Page 7: Python 101

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 communitySpack, 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.

Page 8: Python 101

Cross - Platform

Page 9: Python 101

Why Python ?• Open Source• Readability• Easy learn• Interpreter language• Functional language• Object Oriented Programming - driven• Large scientific library

Page 10: Python 101

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.

Page 11: Python 101

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

Page 12: Python 101

Python Frameworks• Django• Pyramid• Flask• Tornado• Google App Engine

• Tkinder• wxPython• PyQt

Page 13: Python 101

Commercial UsesApplication Web Application

Page 14: Python 101

Commercial UsesGames 3D Scripting / Animation

Page 15: Python 101

Commercial Uses• Social Media • Other Uses

Page 16: Python 101

Popularity

*TIOBE Index for March 2017

Page 17: Python 101

THANKSQ&A