Bonjour,

Voilà, j'essaye d'apprendre comment fonctionne Python.
Un petit truc me perturbe. Dans le code suivant, écrit avec SciTE 1.73 et Python 2.5, je dois pouvoir introduire une note égale à zéro.
Normalement, c'est une note négative qui fait sortir de la boucle de saisie des valeur ...

Mais voilà ...

quand je tape une valeur = 0 (zéro), Python quitte la boucle de saisie, comme si j'avais introduit un nombre négatif.

Il semble donc qu'il interprète cette note comme une valeur "FAUX".

Où est l'erreur ???

************************* Le code ***********************
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# -*- coding:Latin-1 -*-
#Écrire une boucle de programme qui demande à l'utilisateur d'entrer des notes d'élèves. La
#boucle se terminera seulement si l'utilisateur entre une valeur négative. Avec les notes ainsi
#entrées, construire progressivement une liste. Après chaque entrée d'une nouvelle note (et
#donc à chaque itération de la boucle), afficher le nombre de notes entrées, la note la plus
#élevée, la note la plus basse, la moyenne de toutes les notes.
cpt1, notes, bas, haut, moyen, s, t, i, j, k = 0, [], -1, 0, 0, 1, 0, 0, 0, 0
#Tant qu'on introduit pas une note négative, on boucle
print "Indroduire les notes en validant après chaque note. Une note négative provoque la fin de la saisie. "
#
while (s > 0) :
	t = input('Introduisez la note puis validez ')
	if t > 0 :	#Si note positive
		print "T > 0"
		notes.append(t)	#Ajouter à la liste
		print notes
		cpt1 = len(notes)	#Compter les enregistrements dans la liste
		while i < len(notes) :	#Lire chaque enregistrement de la liste
			if notes[i] > haut :	#Chercher la note maxi
				haut = notes[i]
			if bas == -1 :	#Pour introduire la première valeur mini
				bas = t
			elif notes[i] < bas :	# Chercher la note la plus basse
				bas = notes[i]
			i=i+1	
	else :
		break
while j < len(notes) :	#Lire toutes les notes
	moyen = moyen + notes[j]	#Additionner toutes les notes
	j=j+1
#
if j!= 0 :	#Intercepter une division par zéro
	moyen = moyen/(j)	# Calculer la moyenne des notes
#
print "Nombre de notes : ", cpt1
print "Note maxi : ", haut
print "Note mini : ", bas
print "Note moyenne : ", moyen
*********************************************************

Une seconde question : n'y a-t-il pas moyen de configurer SciTE pour ne plus avoir à écrire la première ligne de pseudocode suivante ?
(C'est pour pouvoir utiliser les caractères accentués)

# -*- coding:Latin-1 -*-

Je vous remercie d'avance.