Partage
  • Partager sur Facebook
  • Partager sur Twitter

Les erreurs courantes en Python

Évitons de nous répéter

28 mai 2017 à 0:34:22

Aissata12 a écrit:

Ah d'accord Merci ! Mais il y a autant d'élément dans t1 que dans t2 . Janvier correspond donc à t1[0]


Oui, ce qui fait que t=t1+t2 contient deux fois plus d'élément que t1.  ton for doit porter sur t1 ou t2 mais pas sur T1+T2 qui ne sert à rien.  enfin tu pourrais faire : 

t1 = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
t2 = ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin','Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']
t = t1 + t2
i = 0
for lettre in t1 :
    print(t1[i],t2[i])
    i = i + 1

ou 

t = t1 + t2
i = 0
for lettre in t1 :
    print(t[i],t[i+len(t1)])
    i = i + 1

ou mieux : 

for i,lettre in enumerate(t1) :
    print(t[i],t[i+len(t1)])
D'ailleurs,pour t il est plus logique de construire les couples (mois, jours du mois) que de stocker les deux séparément : 
t1 = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
t2 = ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin','Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']
t = [ [t1[i],t2[i]] for i in range(len(t1))] #t = [ [31,'janvier'],[28,'fevrier'] ... ]

for couple  in t :
        print( *couple,sep=' : ')





-
Edité par edouard22 28 mai 2017 à 0:37:12

  • Partager sur Facebook
  • Partager sur Twitter
28 mai 2017 à 7:15:05

@aissata: ce n'était pas le bon endroit pour poster. Ici c'est un recensement des erreurs courantes.

LA bonne façon d'itérer sur plusieurs objets simultanément, c'est d'utiliser la fonction zip:

nb_jours = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
mois = ['Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin','Juillet',
        'Août', 'Septembre', 'Octobre', 'Novembre', 'Décembre']

for nb, m in zip(nb_jours, mois):
    print("Le mois de {} comporte {} jours".format(m, nb))


PS: Donne un nom explicite à tes variables. C'est quand même plus compréhensible de lire nb_jours et mois que t1 et t2.

  • Partager sur Facebook
  • Partager sur Twitter
Précepte: Le mieux est l'ennemi du bien
18 juin 2017 à 15:54:00

Bonjour

je pense être sur le bon topic peut-être me corrigerez vous. Je suis sous Mac et j'utilise Pyzo.

Je souhaite utiliser la librairie beautiful soup.  Hors quand j'essaie de l'installer voilà ce qui me retourné.

pip install beautifulsoup4

Requirement already satisfied (use --upgrade to upgrade): beautifulsoup4 in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/beautifulsoup4-4.4.1-py3.5.egg

You are using pip version 7.1.2, however version 9.0.1 is available.

You should consider upgrading via the 'pip install --upgrade pip' command.



Peut-être que c'est lié mais j'ai aussi des problèmes d'installation avec pip.  Par défaut il semblerait qu'il s'installe sur python27 alors que je fonctionne avec python 3 5

pip install --upgrade pip

Collecting pip

Downloading pip-9.0.1-py2.py3-none-any.whl (1.3MB)

Installing collected packages: pip

Found existing installation: pip 7.1.2

Uninstalling pip-7.1.2:

Exception:

Traceback (most recent call last):

File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/shutil.py", line 538, in move

os.rename(src, real_dst)

PermissionError: [Errno 13] Permission denied: '/Library/Frameworks/Python.framework/Versions/3.5/bin/pip3' -> '/var/folders/6t/kz6s65_53gz9_vypk4cbdq980000gp/T/pip-r104e1qa-uninstall/Library/Frameworks/Python.framework/Versions/3.5/bin/pip3'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pip/basecommand.py", line 211, in main

status = self.run(options, args)

File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pip/commands/install.py", line 311, in run

root=options.root_path,

File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pip/req/req_set.py", line 640, in install

requirement.uninstall(auto_confirm=True)

File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pip/req/req_install.py", line 716, in uninstall

paths_to_remove.remove(auto_confirm)

File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pip/req/req_uninstall.py", line 125, in remove

renames(path, new_path)

File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pip/utils/__init__.py", line 315, in renames

shutil.move(old, new)

File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/shutil.py", line 553, in move

os.unlink(src)

PermissionError: [Errno 13] Permission denied: '/Library/Frameworks/Python.framework/Versions/3.5/bin/pip3'

You are using pip version 7.1.2, however version 9.0.1 is available.

You should consider upgrading via the 'pip install --upgrade pip' command.



merci par avance des pistes de  correction.

-
Edité par geea 18 juin 2017 à 16:00:31

  • Partager sur Facebook
  • Partager sur Twitter
18 juin 2017 à 16:23:51

geea a écrit: > je pense être sur le bon topic peut-être me corrigerez vous.

Non. Ce sujet sert à référencer les erreurs courantes et leur apporter des solutions, pas à résoudre des problèmes au cas par cas.

Pour ton soucis, ouvre un nouveau sujet.

  • Partager sur Facebook
  • Partager sur Twitter
23 juin 2017 à 0:39:07

Bonjour,

Quelqu'un peut me dire, si il'y a des changement au niveau de la commande " \n " sur la version 3.6 ? ça à l'air de ne pas fonctionner :/

Merci d'avance 

-
Edité par GharbiAymen 23 juin 2017 à 0:42:16

  • Partager sur Facebook
  • Partager sur Twitter
23 juin 2017 à 1:01:46

tu definis une chaine de caractère, normal qu'il n'interprète pas son contenu. essaye printf(man), et cela marchera ;)
  • Partager sur Facebook
  • Partager sur Twitter
25 juin 2017 à 12:50:57

Bonjour,

J'essaye d'importer un module (qui s'appelle module.py) que j'ai créé. Mon problème est que lorsque je rentre la commande dans l'interpréteur de python:

import module

Il me renvoie :

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    import module
ModuleNotFoundError: No module named 'module'

Que dois-je faire pour pouvoir utiliser la fonction de mon module ?

Parallèlement, j'ai créé un programme (test.py) qui loge dans le même répertoire que mon module. Voici le code basique de mes deux fichiers :

Celui de module.py :

def f(x):
	return x*x

Et celui de test.py :

import module

f(2)

input("suivant")

Lorsque je lance le programme test.py, une fenêtre s'affiche un quart de seconde puis se ferme. Comment régler ce problème ?

Je vous remercie par avance.


-
Edité par Enguevigne 25 juin 2017 à 13:11:04

  • Partager sur Facebook
  • Partager sur Twitter

"Dieu ne joue pas aux dés"

27 juin 2017 à 22:49:28

   Bonjour à tous, j'ai commencé à apprendre le langage Python il n'y as pas très longtemps de sa ducoup je ne m'y connais pas encore très bien, est ce que vous pouvez me dire pourquoi et comment résoudre cette exceptions merci
  • Partager sur Facebook
  • Partager sur Twitter
28 juin 2017 à 8:04:46

Bonjour,

le message est assez explicite, ton fichier.txt ne se trouve pas à la racine de C . Mets le vrai chemin de ton fichier et ça devrait marcher! Ce n'est pas un problème de langage.

A+

-
Edité par Philippe2463 28 juin 2017 à 8:06:17

  • Partager sur Facebook
  • Partager sur Twitter
La chute n'est pas un échec, l'échec c'est de rester là où on est tombé!
28 juin 2017 à 14:29:12

nohar a écrit:

Oui, ça peut servir de base. (Merci d'avoir répondu, j'vais pouvoir commencer à ajouter du contenu sans attendre 24h :D ).

Mon idée de base était surtout de partir des erreurs "j'ai pas compris mon exception" les plus courantes dans le forum, mais on peut aussi essayer d'anticiper, quoi qu'il est moins évident dans ce cas de trouver le genre d'inattention "typique de débutant" provoquant l'exception en question.
Concrètement : on vient d'aider un Zér0 à résoudre un problème en étant très tenté de lui dire « mais enfin ! Il suffit de LIRE l'erreur », on remarque que cette exception n'est pas encore consignée ici. Hop ! On la rajoute, et la prochaine fois, on n'a plus qu'à renvoyer vers le lien de l'explication en question, de manière à ce que la personne cherche aussi à comprendre son erreur (ce qui est plus formateur) plutôt qu'on la résolve pour lui.



  • Partager sur Facebook
  • Partager sur Twitter
5 juillet 2017 à 15:01:24

Bonjour, je ne sais pas si cette erreur est courantes mais elle concerne python 36 et je n'ai aucune idée de comment la resoudre: 

j'ai installé python36 il ya peu de temps. Ce dernier s'installe bien mais lorsque j'essaie de le lancer, une boite de dialogue apparit me disant que "python.exe erreur d'application : l'appalication n'a pas reussi à demarrer correctement  0xc000007b .cliquez sur OK pour fermer l'application"

j'ai fais des recherches mais il semblerait qu'elle est courante sur bon nombre d'application et de jeux mais la solution différencie selon la source du problème. Et la source du problème m'echappe complètement: je ne sais pas s'il s'agit d'un problème de directX, de framework, de fichier .dll

PS : je suis sous WIN8 e j'utilisais python34 avant (ce dernier marchait bien mais présentait souvent des erreur dont j'ai migrer vers python36)

Aidez moi s'il vous plaît, s'il vous plaît! 

Merci!

  • Partager sur Facebook
  • Partager sur Twitter
8 juillet 2017 à 17:20:33

Merci beaucoup, j'ai mis mon fichier sur mon bureau quel est le chemin que je doit mettre?

Philippe2463 a écrit:

Bonjour,

le message est assez explicite, ton fichier.txt ne se trouve pas à la racine de C . Mets le vrai chemin de ton fichier et ça devrait marcher! Ce n'est pas un problème de langage.

A+

-
Edité par Philippe2463 28 juin 2017 à 8:06:17



  • Partager sur Facebook
  • Partager sur Twitter
6 août 2017 à 11:24:39

Bonjour,

Je vous contacte puisque je suis à la leçon sur Python concernant la fonction "if" ainsi que ses limites qui introduit donc les fonctions "elif" et "else" mais je rencontre certains problèmes que je ne sais comment résoudre. Sur le cours, il est dit de faire cet exercice: 

J'essaie donc de faire cet exercice mais je n'y arrive pas puisque j'ai un problème il semblerait avec Python alors que j'essaie de faire exactement comme l'exercice, voyez plutôt: 

Ici je ne comprends pas quel est le problème de syntaxe qu'il me dit.

Autre moment:

Il me donne un problème d'indentation alors que j'ai bien fait l'espace et le même...

Une fois j'avais réussi à faire les instructions et l'exercice mais lorsque par la suite je changais les valeurs de "a" et "b", rien ne se passait. Lorsque j'indique la valeur de "a" et "b" avant les instructions, une fois les instructions écrite je reçois postivement le message mais si je change par la suite les valeurs, plus rien ne marche... Voyez dans cet exemple:

Ici, ne devrait-il pas non plus me dire "a est supérieur à 0" après ma phrase "a=8" et "a=9"? Pourquoi ne continue-t-il pas après les commandes alors qu'il a bien reconnu le "a=5" du début?

Merci pour toute votre aides avec mes problèmes de débutant.... :S

  • Partager sur Facebook
  • Partager sur Twitter
Matthieu Monier
6 août 2017 à 11:34:13

T'es au mauvais endroit. Créé un nouveau post pour ton problème. Et pour insérer du code, utilise le bouton </> et choisis le langage python.

  • Partager sur Facebook
  • Partager sur Twitter
Précepte: Le mieux est l'ennemi du bien
6 août 2017 à 11:39:40

L'exercice est faux, il présente une forme qu'il est impossible d'entrer dans l'interpréteur interactif.

  • Partager sur Facebook
  • Partager sur Twitter
6 août 2017 à 11:56:24

Ah désolé si je suis au mauvais endroit.... Je ne vois pas une fonction pour créer un post c'est pourquoi je me suis permis de le poster ainsi... que veux-tu dire par l'exercice est faux? Comment peut-on réaliser donc ce qui est marqué et faire en sorte que l'interpréteur me mette "a est supérieur à 0" dans le dernier exercice une fois que j'ai mis a=8 ou a=9?

Autre exemple, plus important:

Pourquoi ne me répond-t-il pas lorque je change la valeur de age après les instructions données? C'est normal?

Merci pour vos réponses et toute votre aide :-)

-
Edité par MatthieuMonier1 6 août 2017 à 12:08:25

  • Partager sur Facebook
  • Partager sur Twitter
Matthieu Monier
28 septembre 2017 à 15:33:23

bonjour tout le monde, j'ai créer un petit programme python ( je suis débutant ) avec l'aide de cette video

[ url =https://www.youtube.com/watch?v=S1SDhbJwfdk&lc=z232yb1bcpqnfduqe04t1aokg2km0wb5et0qxjunypejrk0h00410.1506602613719434]ici [/url]

je suis sur windowje mais lorsque je marque seulement cd Desktop dans python 3.6 et  il me met : File "<stdin>", line 1 cd Desktop et si je marque mon chemin c'est à dire :

C:\Users\blues> cd Desktop ou C:\Users\blues>cd Desktop il me marque :

File "<stdin>", line 1 C:\Users\blues>cd Desktop

alors que mon dossier est bien C:\Users\blues\Desktop

je ne comprend rien aidez moi svp /:

  • Partager sur Facebook
  • Partager sur Twitter
29 septembre 2017 à 22:40:20

Bonjour,

Je viens de démarrer la formation pour python et je suis face à un problème:

Python me signal une erreur dans la fonction "except" (voir capture d'écran). J'ai pourtant fais exactement la même chose que dans l'exemple.

Merci de vos réponses
  • Partager sur Facebook
  • Partager sur Twitter
30 septembre 2017 à 8:37:01

Enleve l'indentation. les 3 exepts et le elses doivent être au même niveau dans le code. ;)

-
Edité par edouard22 30 septembre 2017 à 8:37:16

  • Partager sur Facebook
  • Partager sur Twitter
30 septembre 2017 à 21:41:13

Ah oui désolé de ma question, c'était évident...
Je devais être fatigué :)

Merci dans tout les cas de ta réponse

  • Partager sur Facebook
  • Partager sur Twitter
1 octobre 2017 à 2:12:07

Bonjours :-)

Je suis débutante et j'ai un problème avec mon nouveau code :-( 

Voila python m'affiche "erreur de syntaxe" quand je veux le lancer et me surligne en rouge les deux points... Je suis pourtant certaine qu'on doive en mettre après un if... non? 

bref 

je suis perdue XD

merci 

  • Partager sur Facebook
  • Partager sur Twitter
1 octobre 2017 à 8:47:11

Ce post s'appelle «Les erreurs courantes en python», donc comme son nom l'indique il sert à recenser ...... les erreurs les plus courantes. Donc avant de poster un message, il faudrait prendre la peine de lire ce post pour voir si l'erreur n'a pas déjà été expliqué (c'est quand même un comble de poster sur ce fil sans prendre 5 minutes pour lire les messages précédents :().

Et si l'erreur ne s'y trouve pas (ou que vous ne la comprenez pas), il suffit de créer votre propre sujet (sur le forum en utilisant le bouton créer un sujet) en lui donnant un titre explicite:

Enfin, il y a quelques règles à respecter (comme sur n'importe quel forum public). L'une d'elle c'est de ne pas mettre de capture d'écran mais d'utiliser le bouton de code </> pour insérer .... votre code. C'est plus lisible pour nous et ça permet de pouvoir le copier facilement (ce qui n'est pas possible avec une capture d'écran ou on doit tout réécrire à la main :colere2:). Le lien vers la présentation du sujet ICI.

Et le bouton </> en image:

  • Partager sur Facebook
  • Partager sur Twitter
Précepte: Le mieux est l'ennemi du bien
1 octobre 2017 à 9:42:45

Bonjour,

je suis tout nouveaux sur python et je n'arrive pas à ouvrir python via l'invite de commande windows ou même de la fenêtre exécuté comme le demande le prof de ce cour https://openclassrooms.com/courses/demarrez-votre-projet-avec-python/installez-python

Malgré le fait que je tape python3

Si quelqu'un peu m'aider, j'en serai reconnaissant :)

-
Edité par Rosiedu69 1 octobre 2017 à 9:43:47

  • Partager sur Facebook
  • Partager sur Twitter
I'm know nothing (yes, I'm John)
1 octobre 2017 à 11:09:01

Olygrim a écrit:

Ce post s'appelle «Les erreurs courantes en python», donc comme son nom l'indique il sert à recenser ...... les erreurs les plus courantes. Donc avant de poster un message, il faudrait prendre la peine de lire ce post pour voir si l'erreur n'a pas déjà été expliqué (c'est quand même un comble de poster sur ce fil sans prendre 5 minutes pour lire les messages précédents :().

Et si l'erreur ne s'y trouve pas (ou que vous ne la comprenez pas), il suffit de créer votre propre sujet (sur le forum en utilisant le bouton créer un sujet) en lui donnant un titre explicite:

Enfin, il y a quelques règles à respecter (comme sur n'importe quel forum public). L'une d'elle c'est de ne pas mettre de capture d'écran mais d'utiliser le bouton de code </> pour insérer .... votre code. C'est plus lisible pour nous et ça permet de pouvoir le copier facilement (ce qui n'est pas possible avec une capture d'écran ou on doit tout réécrire à la main :colere2:). Le lien vers la présentation du sujet ICI.

Et le bouton </> en image:

`c'est presque de la provocation ce que tu fais la Rosiedu69... Le sujet a tellement dérivé, que je pense qu'il serait presque mieux qu'il soit fermé par un modo.

-
Edité par edouard22 1 octobre 2017 à 11:10:37

  • Partager sur Facebook
  • Partager sur Twitter
1 octobre 2017 à 11:32:23

Désolé,

je pensais que c'était une erreur, j'ai lu ce qu'il y avait au dessus.

Encore désolé

  • Partager sur Facebook
  • Partager sur Twitter
I'm know nothing (yes, I'm John)
26 novembre 2017 à 17:54:46

salut

SVP est ce que vous pouvez m'aider pour corriger ces erreurs!

merci

  • Partager sur Facebook
  • Partager sur Twitter
24 décembre 2017 à 17:39:54

les cours sont pour mac et moi j'ai un windows, est ce que quelqu'un peut m'aider svp je n'arrive pas à lancer mon programme (de Sublime Text) dans l'Invite de commande ce ma marque ceci quand je veut lancer mon programme san_antonio.py :

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'san_antonio' is not defined

-
Edité par XamerFall 24 décembre 2017 à 17:40:44

  • Partager sur Facebook
  • Partager sur Twitter
26 décembre 2017 à 14:27:43

salut, voila ce que j'ai marque sur sublime text (c le même programme que le cour):

quotes = ["Ecoutez-moi, Monsieur Shakespeare, nous avons beau être ou ne pas être, nous sommes !", "On doit pouvoir choisir entre s'écouter parler et se faire entendre."]

characters = ["alvin et les Chipmunks", "Babar", "betty boop", "calimero", "casper", "le chat potté", "Kirikou"]
user_answer=input('Tapez entrée pour connaître une autre citation ou B pour quitter le programme.')                                                                                     

# Show random quote

if user_answer == "B":
  pass
elif user_answer == "C":
  print('C pas la bonne réponse ! Et G pas dhumour, je C...')
else:
  # show another quote

def how_random_quote(my_list)
  # get a random number
  quote = my_list[1]        
  print(quote)
 
show_random_quote(quotes)

et quand je marque san_antonio.py dans mon invite de commandes, il me marque un message d'erreur:

File "C:\Users\sanantonio\san_antonio.py", line 1
SyntaxError: Non-ASCII character '\xea' in file C:\Users\sanantonio\san_antonio.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

-
Edité par XamerFall 26 décembre 2017 à 14:32:51

  • Partager sur Facebook
  • Partager sur Twitter
8 janvier 2018 à 15:16:59

Bonjour Xamerfall

A fortiori le message d'erreur indique qu'il y a peut être un problème de caractère non-reconnu.

Est-ce que tu as essayé d'insérer la ligne faisant référence à l'encodage UTF8 du cours ?

# -*- coding: utf8 -*-

Je sais que j'ai eu cette erreur une fois en faisant ce cours, mais je ne me souviens plus exactement comment j'ai résolu ça. Sans compter que je ne trouve rien dans mon carnet de bugs ... donc je peux juste te suggérer ça.

Normalement si tu ouvres ton fichier .py avec IDLE il te suggère un encodage par défaut.

  • Partager sur Facebook
  • Partager sur Twitter