$> ls -l
-rwrw-rw- 1 db0   db0 62.1 Ko 2015-03-30 19:37 Impatient C
-rwrw-rw- 1 db0   db0  3.5 Ko 2015-03-30 19:37 Impatient SCM
-rwrw-rw- 1 db0   db0  3.0 Ko 2015-03-30 19:37 Impatient Emacs
-rwrw-rw- 1 db0   db0  2.4 Ko 2015-03-30 19:37 Impatient Man Pages
-rwrw-rw- 1 db0   db0 10.5 Ko 2015-03-30 19:37 Impatient Perl
-rwrw-rw- 1 db0   db0 17.3 Ko 2015-03-30 19:37 Impatient Python
-rwrw-rw- 1 db0   db0 13.6 Ko 2015-03-30 19:37 Impatient Shell Debutant
-rwrw-rw- 1 db0   db0 16.4 Ko 2015-03-30 19:37 Impatient Shell Script
-rwrw-rw- 1 db0   db0  3.4 Ko 2015-03-30 19:37 Impatient Shell
-rwrw-rw- 1 db0   db0  1.8 Ko 2015-03-30 19:37 Impatient Vim


Python pour les impatients

Plongez votre nez dans Python avec la pratique et sans passer par la case lecture interminable de longs tutoriaux !
Ici, pas de blabla, juste ce qu'il faut pour apprendre mais aussi pour réutiliser comme fiche de référence par la suite.

Des remarques, retours, commentaires, éléments à ajouter ou corriger, ou des erreurs ? Utilisez les commentaires en fin de page. Merci !

Environnement

Syntaxe et Sémantique

a = 5
def addition(a, b, print):
    result = a + b
    if print:
        print 'The result is:', str(result)
    return result
addition(2, 3, true)
if a == '*':
  doeverything()
elif a == '-':
  donothing()
else:
  dosomething(a)
while i < len(a):
    print a[i]
    i += 3
words = ['cat', 'window', 'defenestrate']
for w in words:
    print w, len(w)
import sys
from hello import say
say('Kim');

Modules

Sys

Strings

name = 'john'
print name[1] # affiche 'o'
rawstring = r'this\nthat\t'
presentation = "my name is %s and I'm %d years old" % ('Rachel', 18)
u'todo'

Listes

people = ['erika', 'manuel', 'josh']
you = people[1] # = 'manuel'
family = ["mom", "dad"] + ["sister", "brother"]
friends = ["julia", "martin"]
num = 1
for friendname in friends
    print 'my friend number ', str(num), ' is ', friendname
    num += 1
print 'and I love them all'
if 'maria' in friends:
    print 'she\'s my friend'

Note : 'in' marche aussi sur les string et itère sur les caractères de celle-ci. - Utiliser des rangées de nombre pour, entre autre, itérer un certain nombre de fois :

for i in range(10)
    print str(i) # va afficher les nombres de 0 à 99
list = []
list.append('carl')
list.append('jim')
nums = [1, 2, 3, 4]
squares = [ n * n for n in nums ]   ## [1, 4, 9, 16]

D'autres modules

Bonnes pratiques et Coding style

if phonenumber == 1
    makeaphnecall('111')
else
    makeaphonecall(phonenumber)
def main():
    print 'Hello', sys.argv[1]

if __name__ == '__main__':
    main()
def helloworld():
    """It will print the famous: Hello World"""
    print 'Hello World'

Les "docstring" peuvent aussi être récupérées directement depuis le code :

help(len) # donne la docstring de la fonction len
help(sys) # donne la docstring du module sys
dir(sys) # donne une liste des fonctions et variables du module sys

Objets

class MyClass(OtherClassToHeritFrom):
    """A simple example class"""
    i = 12345
    def __init__(self, str):
        self.str = str
    def f(self):
        return 'hello world'

example = MyClass('abc')
En cours...

En attendant : lien