FAQ PythonConsultez toutes les FAQ

Nombre d'auteurs : 16, nombre de questions : 313, dernière mise à jour : 10 juillet 2017  Ajouter une question

 

Cette FAQ a été réalisée à partir des questions posées sur le forum Python complétées par d'autres questions qui pouvaient nous sembler intéressantes de traiter. Toutefois il se peut que les réponses apportées contiennent des erreurs, imprécisions ... Vous pouvez dans ce cas contacter un des membres de la rédaction pour lui faire part de vos remarques.

L'équipe Python de Developpez.


SommaireExercices CorrigésUtilisation des listesListes - Enoncés des exercices (5)
précédent sommaire suivant
 

Écrire deux fonctions de paramètre N entier naturel, et qui retournent la liste des N premiers termes de la suite arithmétique de raison 12 et de premier terme 1 :

\[\forall n \in\mathbb{N}\quad \, u_n=12n+1\]

par deux méthodes différentes :

  • à l’aide d’une boucle ;
  • par compréhension de liste.


Comparer les temps d’exécution des deux méthodes à l’aide de la fonction clock() du module time, et du petit script suivant :

Code python : Sélectionner tout
1
2
3
4
5
6
from time import clock 
def duree(fonction, n=1000000) # durée d’exécution de fonction(n) 
    debut = clock()        # temps début 
    fonction(n)            # appel de fonction(n) 
    fin = clock()          # temps fin 
    return fin - debut     # durée retournée en secondes

Mis à jour le 15 août 2014 f-leb

  1. Écrire une fonction moyenne() prenant en paramètre une liste de nombres et qui retourne sa moyenne.
  2. Écrire une fonction variance() prenant en paramètre une liste de nombres et qui retourne sa variance.
  3. On pourra les tester sur des listes de nombres aléatoires que l’on aura créées à l’aide de la fonction random() du module random qui renvoie un décimal (float) aléatoire dans [0,1[.

Mis à jour le 15 août 2014 f-leb

Construire par compréhension de liste les listes suivantes :

  1. La liste des logarithmes népériens (ln) des entiers compris entre 1 et 20.
  2. La liste des entiers compris entre 0 et 100 qui sont pairs et qui ne sont pas des multiples de 3.
  3. La liste ['@-@', '@--@', '@---@', '@----@', '@-----@'].
  4. La liste des couples d’entiers entre 0 et 10 dont la somme est un multiple de 5.
  5. Écrire une fonction qui prend pour paramètre un entier n et retourne sous forme d’une liste de listes la matrice identité de rang n.

Mis à jour le 15 août 2014 f-leb

Les caractères non accentués, chiffres et autres symboles accessibles au clavier ou non, sont disponibles dans la table ASCII de caractères, numérotés de 0 à 255 (0xFF).
La fonction chr(n) retourne le caractère de la table de code ASCII n.
La fonction ord() retourne le code ASCII d’un caractère dans la table.
Les caractères de ’a’ à ’z’ sont rangés dans l’ordre alphabétique de 97 à 122, les caractères de ’A’ à ’Z’ de 65 à 90.

  1. Écrire un script pour afficher à l’écran les caractères de la table ASCII de code allant de 33 à 126. On les présentera par ligne de 16 caractères.
  2. Écrire une fonction maj() qui prend en argument une chaîne de caractères non accentués et qui renvoie la chaîne avec les minuscules converties en majuscules.

Mis à jour le 15 août 2014 f-leb

C’est une méthode très simple de chiffrement de messages en un texte crypté pour le rendre « illisible » à qui n’en a pas la clef. Dans un message en lettres majuscules supprimer tous les espaces et symboles, puis changer chaque lettre par sa Nième lettre suivante dans l’ordre alphabétique (après 'z' on reprend à 'a'), où N est un entier entre 1 et 25.

  1. Écrire une fonction CesarCrypt() qui prend deux paramètres, la clef de chiffrement N et une chaîne de caractères en majuscules sans symbole ni espace, et renvoie le chiffrement de César de la chaîne.
  2. Écrire une fonction CesarDecrypt() qui prend deux paramètres, un texte crypté et la clef, puis retourne le texte décrypté.

Mis à jour le 15 août 2014 f-leb

Proposer une nouvelle réponse sur la FAQ

Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2018 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

 
Contacter le responsable de la rubrique Python