Introduction au Python pour
des scientifiques !
Module1: Initiation!
!
Sophie Cloché, Marc-Antoine Drouin, Dmitry Khvorostyanov,!
Estelle Lorant, Vincent Noël, Jean-Yves Peterschmitt
!
avec des contributions précieuses de !
Ludmila Klenov, Yohann Morille !
!
Institut Pierre et Simon Laplace
Journée de formation IPSL – 2 décembre 2014
Ecole Polytechnique, Palaiseau, France
Programme de la journée
Matin (maintenant)
!
9h30 : accueil café
!
10h00 – 12h45: Introduction générale à Python (amphi Becquerel)
!
!
Midi
!
12h45 – 14h00 : repas (salle Aquarium)
!
!
Après-midi
14h – 18h00: Travaux Pratiques (salles informatiques 32 et 33 de l'X)
Presentation outline
●Introduction to Python (Dmitry)
●Language syntax introduction (Dmitry & Marc-Antoine)
●Coffee break/Questions
●Scientific Python libraries (Marc-Antoine)
●Hands-on session overview (Dmitry)
Python: Brief History
•February 1991, the 1
st published version (0.9.0): classes, exception handling,
functions, core datatypes (list, dict, str...), module system
•January 1994, v1.0: functional programming paradigm tools lambda, map, filter
and reduce.
•October 1996, v1.4: keyword arguments [ex.: c = jump(high = True)], complex
numbers
•October, 2000, v2.0: list comprehensions (we'll see one today!), a garbage
collection system (makes life easier with memory management)
•December, 2001, v2.2: new-style classes (unification of Python's types (written in
C) and classes (written in Python) into one hierarchy; generators
•December, 2008, v3.0: "Reduce feature duplication by removing old ways of
doing things" => no more backward compatibility!
•June, 2009, v3.1, July, 2010, v2.7. Python 2.7 was released to coincide with
Python 3.1, included some features 3.1, as well as warnings for old features. The
2.7 was the last 2.x release.
Van Rossum at OSCON 2006
Photo taken from WikiPedia
Guido Van Rossum:
"Benevolent Dictator For Life"
!
Python creator, he oversees the
development process,
making decisions
Why Python?
●High-level flexible programming language
●Development speed
●Code readability
●Collaborative development, program component (re-)usability
combined with
●Rich variety of libraries for wide range of applications:
●Scientific computing
−Data analysis, statistics, input/output
−Data visualization
−Image/signal processing, data mining, machine learning....
●Shell programming (a readable bash alternative!)
●Web / Databases
●Human-computer interaction (graphical user interfaces, virtual reality...)
●Video-games, networking, sound/text processing, linguistics, neurosciences...
●Embedded systems
●Free, open-source, permissive license (PSFL)
●Large, friendly, dynamically growing community
1 / 16 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!