python introduction

29

Upload: seyed-mohammad-javad-beheshtian

Post on 06-May-2015

1.507 views

Category:

Technology


0 download

DESCRIPTION

Introduction to Python programming language A brief history Main Features Some Application Written in Python

TRANSCRIPT

Page 2: Python Introduction

Python Introduction

What is Python?

Fall 2013

• A programming language

o High-level

o Interpreted

o Open Source

o General purpose

o Object-oriented

o Easy to interface with C/C++/Java/Fortran

o Great interactive environment

o …

Page 3: Python Introduction

Python Introduction

Why Python?

Fall 2013

• There is no best programming language

o It’s up to your needs

Page 4: Python Introduction

Python Introduction

• First Implementation on 1989

• by Guido van Rossum

• Python 2.0 released at 2000

• Python 3.0 released at 2008

History

Fall 2013

Page 5: Python Introduction

Python Introduction

• First in CWI in Science Park Amsterdam.

• 2005 – 2012 in Google

• Present at Dropbox

Progress …

Fall 2013

Page 6: Python Introduction

Python Introduction

• emphasize code readability:

o Beautiful is better than ugly.

o Explicit is better than implicit.

o Simple is better than complex.

o Complex is better than complicated.

o Readability counts.

Fall 2013

Code Features

print(“Hello World !")

Page 7: Python Introduction

Python Introduction

• CPython

• PyPy

• Jython

• IronPython

• Cython

• PyS60

• Pyjamas

• Shed Skin

• …

Fall 2013

Implementations

Page 8: Python Introduction

Python Introduction

• Main reference implementation

• With large libraries written in C & Python

• Support by almost every OS o Windowso Linuxo Mac OS Xo Apple iOSo Androido …

Fall 2013

CPython

Page 9: Python Introduction

Python Introduction

• Alternate general implementation

• Faster

• Better memory usage

• Compatible with popular libraries

Fall 2013

PyPy

Page 10: Python Introduction

Python Introduction

• Written in Java

• Can use Java class and modules

• Include most of the python standard library

• Brings Java to Python

Fall 2013

Jython

Page 11: Python Introduction

Python Introduction

• written entirely in C#

• Employ .NET framework

• First Developed by Microsoft

• Brings .NET classes into Python

Fall 2013

IronPython

Page 12: Python Introduction

Python Introduction

• Can use C/C++ modules & function inside python

• written in Python

• Is superset of python

• Brings C/C++ into Python

Fall 2013

Cython

Page 13: Python Introduction

Python Introduction

• Developed by Nokia

• Python shell inside S60 device

• Brings Python into Nokia S60

Fall 2013

PyS60

Page 14: Python Introduction

Python Introduction

• Web & desktop application framework

• Generate JavaScript from Python

• Base on Google web toolkit

• Brings JavaScript in Python

Fall 2013

Pyjamas (Pyjs)

Page 15: Python Introduction

Python Introduction

• Compiler for Python

• Generate C++ code

• Brings Python in C++

Fall 2013

Shed Skin

Page 16: Python Introduction

Python Introduction

• Google

• Yahoo

• NASA

• CERN

Fall 2013

Organizational Use

Page 17: Python Introduction

Python Introduction

• YouTube

• Gmail (+java)

• Google Groups

• Google Maps

• Parts of Search Engine

Fall 2013

Page 18: Python Introduction

Python Introduction

• Yahoo Groups

• Yahoo Maps

Fall 2013

Page 19: Python Introduction

Python Introduction

• Speed up Coding Process

• Make Designing Workflow Easier

Fall 2013

Page 20: Python Introduction

Python Introduction

• Used in Complex Mathematic & Physics Calculation

Fall 2013

Page 21: Python Introduction

Python Introduction

• Scientific

• Games

• Network

• …

Fall 2013

Applications

Page 22: Python Introduction

Python Introduction

• Bioinformaticso AstraZeneca (Drug Discovery)

• GIS and Mappingo The Blind Audio Tactile

mapping System

• Simulationo Carmanah Lights the Way

Fall 2013

Scientific

Page 23: Python Introduction

Python Introduction

• Civilization IVo Major parts of the interface, map

generation, and scripted events are written entirely in Python, and can be customized.

Fall 2013

Games

• Battlefieldo Uses Python for all of its addons and a lot

of its functionality

Page 24: Python Introduction

Python Introduction

• Bit Torrent

• D-Link Australiao Control Firmware Updates

• Mozilla Website (with Django)

• Socket Programming

Fall 2013

Network

Page 25: Python Introduction

Python Introduction

• Libraries

• Web framework

Fall 2013

PyEverything

Page 26: Python Introduction

Python Introduction

• Huge Standard Library

• Lots of third-party libraries

Fall 2013

Libraries

Page 27: Python Introduction

Python Introduction

• Django• Pylons• Pyramid• TurboGears• Web2py• Tornado• Flask• Zope

Fall 2013

Web-Frameworks

Page 28: Python Introduction

Python Introduction Fall 2013

Our Project

download.iut.ac.ir

IUT File Sharing System

- Completely written in Python

- Powered by Django

Page 29: Python Introduction

Python Introduction

THANK YOU

Fall 2013