Le Deal du moment : -28%
-28% Machine à café avec broyeur ...
Voir le deal
229.99 €

Hello Python !

5 participants

Page 13 sur 13 Précédent  1, 2, 3 ... 11, 12, 13

Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 4 Jan - 17:45

a est une variable, un conteneur.
"pierre" est une constante.

Si tu veux assigner pierre à a, tu fais
a = "pierre"
et si tu veux tester s'il y a pierre dans a, tu fais:
if (a == "pierre"):
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 4 Jan - 18:06

L'enfant Voodoo a écrit:a est une variable, un conteneur.
"pierre" est une constante.

Si tu veux assigner pierre à a, tu fais
a = "pierre"
et si tu veux tester s'il y a pierre dans a, tu fais:
if (a == "pierre"):
ca ne marche pas
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 4 Jan - 18:08

def maximum(a, b, c):
  a = "pîerre"
  if (a >= b and a >= c):
    return a
 
  elif (b >= a and b >= c):
    return b
  else:
    return c
# Le programme commence ici
print (maximum(1, 2, 3))
print (maximum(12, 4, 12))
print (maximum(10, 8, 6))



syntax error
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 4 Jan - 19:57

1) Je ne peux RIEN FAIRE avec une syntax error si tu me dis pas quelle est la syntax error et où elle est.
Normalement tu peux la réparer tout seul en lisant l'intitulé de l'erreur.

2) C'est un programme qui te donne le maximum de 3 nombres, c'est pas en collant un "a = pierre" a un endroit au hasard que tu vas le transformer magiquement en jeu scratch
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 4 Jan - 20:14

L'enfant Voodoo a écrit:1) Je ne peux RIEN FAIRE avec une syntax error si tu me dis pas quelle est la syntax error et où elle est.
Normalement tu peux la réparer tout seul en lisant l'intitulé de l'erreur.

2) C'est un programme qui te donne le maximum de 3 nombres, c'est pas en collant un "a = pierre" a un endroit au hasard que tu vas le transformer magiquement en jeu scratch
mdr mdr mdr mdr  Je m'en doutais un peu !
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 4 Jan - 20:16

mais comment établi-t-on un lien entre les lettres et "pierre, ciseaux; feuille" ?
That is the question
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 4 Jan - 21:54

Alors, il y a 2 joueurs, donc 2 variables qui vont servir à stocker ce que jouent les joueurs.
Par exemple, a et b.

Et on aura, par exemple:
a = "pierre"
b = "feuille"

Le joueur 1 à donc joué pierre, et le second feuille.

ou
a = "ciseau"
b = "feuille"

Etc...

Il faut maintenant déterminer qui gagne entre les 2 joueurs.
C'est là qu'interviennent:
- les structures conditionnelles,
- la logique booléenne.

On aura 3 cas:
si a == b alors, ils ont le même signe, personne ne gagne,
sinon, si a == pierre et b == ciseau, ou si a est ciseau et b feuille, ou a feuille et b pierre, a gagne
sinon b gagne.
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Ven 6 Jan - 15:39

Il en branle pas une...
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Ven 6 Jan - 15:48

L'enfant Voodoo a écrit:Il en branle pas une...
mdr mdr mdr mdr
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Ven 6 Jan - 15:58

Au boulot !
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Ven 6 Jan - 17:00

Sleep Sleep Sleep ça caille, je double mon temps de sommeil Sleep Sleep Sleep
et ainsi je bois deux fois moins. C'est booléen.
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Ven 6 Jan - 17:02

le conteneur c'est moi
les variables c'est le temps de sommeil et le litrage
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 9:45

Alors, t'en es où ?
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par Baron Robert de la etc. Mer 11 Jan - 10:16

archibald de montpucier a écrit:Sleep Sleep Sleep ça caille, je double mon temps de sommeil Sleep Sleep Sleep
et ainsi je bois deux fois moins. C'est booléen.
boire deux fois moins c'est sur ça fout les booles!! bière bière
Baron Robert de la etc.
Baron Robert de la etc.

Fonction : Grammar nazi, diptèro-sodomite, écolo-nanar, capilotracteur, opposant à la pensée rance de droite !
Messages : 21483
Date d'inscription : 10/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 11:24

L'enfant Voodoo a écrit:Alors, t'en es où ?
Je piétine. scratch
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 11:25

Baron Robert de la etc. a écrit:
archibald de montpucier a écrit:Sleep Sleep Sleep ça caille, je double mon temps de sommeil Sleep Sleep Sleep
et ainsi je bois deux fois moins. C'est booléen.
boire deux fois moins c'est sur ça fout les booles!! bière bière
mdr mdr mdr  c'est surtout un choc pour l'organisme! bière
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par Baron Robert de la etc. Mer 11 Jan - 11:28

archibald de montpucier a écrit:
Baron Robert de la etc. a écrit:
archibald de montpucier a écrit:Sleep Sleep Sleep ça caille, je double mon temps de sommeil Sleep Sleep Sleep
et ainsi je bois deux fois moins. C'est booléen.
boire deux fois moins c'est sur ça fout les booles!! bière bière
mdr mdr mdr  c'est surtout un choc pour l'organisme! bière
le sevrage est plus violent que pour le bon lait a sa maman !!!
Baron Robert de la etc.
Baron Robert de la etc.

Fonction : Grammar nazi, diptèro-sodomite, écolo-nanar, capilotracteur, opposant à la pensée rance de droite !
Messages : 21483
Date d'inscription : 10/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 11:34

Baron Robert de la etc. a écrit:
archibald de montpucier a écrit:
Baron Robert de la etc. a écrit:
archibald de montpucier a écrit:Sleep Sleep Sleep ça caille, je double mon temps de sommeil Sleep Sleep Sleep
et ainsi je bois deux fois moins. C'est booléen.
boire deux fois moins c'est sur ça fout les booles!! bière bière
mdr mdr mdr  c'est surtout un choc pour l'organisme! bière
le sevrage est plus violent que pour le bon lait  a sa maman !!!
pouaaaah !!!! avec tout ce qu'on entend sur le lait ces derniers temps! C'est à vous dégoûter d'être un chat !
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 11:34

archibald de montpucier a écrit:
L'enfant Voodoo a écrit:Alors, t'en es où ?
Je piétine. scratch

Bon...
Quand on programme, on divise un problème en tâches individuelles.
Pour jouer à pierre-feuille-ciseaux contre l'ordinateur, quelles sont ces tâches ?

- Saisir le choix du joueur,
- définir aléatoirement le choix de la machine,
- comparer,
- afficher le résultat.
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 11:35

beuh....oui...
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par Baron Robert de la etc. Mer 11 Jan - 11:36

archibald de montpucier a écrit:
L'enfant Voodoo a écrit:Alors, t'en es où ?
Je piétine. scratch
c'est pas je pattine pour un chat , plutôt??
Baron Robert de la etc.
Baron Robert de la etc.

Fonction : Grammar nazi, diptèro-sodomite, écolo-nanar, capilotracteur, opposant à la pensée rance de droite !
Messages : 21483
Date d'inscription : 10/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 11:39

Première étape:
On demande ce que le joueur joue.
C'est comme demander le nom, la ville, le plat, etc... exercice qu'on a fait 50 fois.
Avec une nuance: on vérifie ce que le joueur a tapé. Ça doit être "pierre", "ciseaux" ou "feuille", sinon c'est pas bon et on redemande.

En gros: on demande avec input, on vérifie avec un test, et on répète avec une boucle.

Par exemple, et sous forme de fonction:

Code:
def symboleJoueur():
  s = ""
  while (s != "pierre" and s != "feuille" and s != "ciseaux"):
    s = input ("Tapez 'pierre', 'feuille' ou 'ciseaux'")
  return s
  
print (symboleJoueur())
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 11:42

Deuxième étape:
On tire un nombre au hasard pour l'ordinateur entre 0 et 2. Si c'est 0, c'est pierre, 1, c'est ciseaux, 2, c'est feuille.

Code:
import random

def symboleAleatoire():
  n = random.randint(0, 2)
  if (n == 0):
    return "pierre"
  elif (n == 1):
    return "ciseaux"
  else:
    return "feuille"
 
print (symboleAleatoire())
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 11:45

Baron Robert de la etc. a écrit:
archibald de montpucier a écrit:
L'enfant Voodoo a écrit:Alors, t'en es où ?
Je piétine. scratch
c'est pas je pattine pour un chat , plutôt??
mdr mdr mdr mdr bière
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 11:46

En associant les 2:

Code:
import random

def symboleAleatoire():
  n = random.randint(0, 2)
  if (n == 0):
    return "pierre"
  elif (n == 1):
    return "ciseaux"
  else:
    return "feuille"
 
 
def symboleJoueur():
  s = ""
  while (s != "pierre" and s != "feuille" and s != "ciseaux"):
    s = input ("Tapez 'pierre', 'feuille' ou 'ciseaux'")
  return s
 
a = symboleJoueur()
b = symboleAleatoire()

print ("Le joueur joueur joue " + a + ", l'ordinateur joue " + b +".")

Prog a écrit:Tapez 'pierre', 'feuille' ou 'ciseaux' pierre
Le joueur joueur joue pierre, l'ordinateur joue feuille.
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 11:48

Maintenant, il faut comparer et "noter".

On crée une fonction qui prend les 2 signes, qui renvoie 1 quand le premier bat le second, -1 quand le second bas le premier, et 0 en cas d'égalité.

Le test se fait avec de la simple logique booléene.

Code:
def comparer(s1, s2):
  if (s1 == s2):
    return 0
  elif (s1 == "pierre" and s2 == "ciseaux" or s1 == "feuille" and s2 == "pierre" or s1 == "ciseaux" and s2 == "feuille"):
    return 1
  else:
    return -1
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 11:51

Et voilà, plus qu'à ajouter un peu de texte avec des print.

Avec ce code, quand tu le lances, tu fais 5 parties contre l'ordi.

Code:
import random

def symboleAleatoire():
  n = random.randint(0, 2)
  if (n == 0):
    return "pierre"
  elif (n == 1):
    return "ciseaux"
  else:
    return "feuille"
    
def symboleJoueur():
  s = ""
  while (s != "pierre" and s != "feuille" and s != "ciseaux"):
    s = input ("Tapez 'pierre', 'feuille' ou 'ciseaux': ")
  return s
  
def comparer(s1, s2):
  if (s1 == s2):
    return 0
  elif (s1 == "pierre" and s2 == "ciseaux" or s1 == "feuille" and s2 == "pierre" or s1 == "ciseaux" and s2 == "feuille"):
    return 1
  else:
    return -1

for i in range(0, 5):
  s1 = symboleJoueur()
  s2 = symboleAleatoire()
  print ("L'ordinateur joue " + s2)
  resultat = comparer(s1, s2)
  if (resultat == 1):
    print ("Gagné !")
  elif (resultat == -1):
    print ("Perdu !")
  else:
    print ("Égalité.")

Ou en cliquant: https://repl.it/FAgY/4
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 11:56

L'enfant Voodoo a écrit:Deuxième étape:
On tire un nombre au hasard pour l'ordinateur entre 0 et 2. Si c'est 0, c'est pierre, 1, c'est ciseaux, 2, c'est feuille.

Code:
import random

def symboleAleatoire():
  n = random.randint(0, 2)
  if (n == 0):
    return "pierre"
  elif (n == 1):
    return "ciseaux"
  else:
    return "feuille"
  
print (symboleAleatoire())
ok ça fonctionne ...!
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 12:57

Et le programme entier ? Tu arrives à jouer ?
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 13:33

L'enfant Voodoo a écrit:Et le programme entier ? Tu arrives à jouer ?
oui bien sur...j ai testé pendant 10 mn  l aléatoire fonctionne et les réponses sont toujours justes
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 13:40

Alors tu vas l'améliorer !
Tu vas rajouter un comptage des points, et la partie se fera en 5 points gagnants.
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 13:44

L'enfant Voodoo a écrit:Alors tu vas l'améliorer !
Tu vas rajouter un comptage des points, et la partie se fera en 5 points gagnants.
enfantin... sifflote
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 13:46

Qu'est-ce qu'il faut ajouter ?
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 15:08

L'enfant Voodoo a écrit:Qu'est-ce qu'il faut ajouter ?
beuh...
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 15:49

Putain, je te demande pas la mer à boire !

Des scores...
Quand t'as un match de foot, ya 2 variables: le nombre de points du premier club, et le nombre de points du second, donc là, pareil, 2 variables.
On met quoi dedans ?
0, parce qu'au début, il y a 0 - 0, comme au foot.

Code:
score1 = 0
score2 = 0

Ou est-ce qu'on modifie le score ?
Lorsque le joueur gagne, on augmente son score, lorsqu'il perd, on augmente le score de l'autre. Facile, non ?

Code:
if (resultat == 1):
    print ("Gagné !")
    score1 = score1 + 1
  elif (resultat == -1):
    print ("Perdu !")
    score2 = score2 + 1
  else:
    print ("Égalité.")

Que devient la boucle ?
On ne veut plus 5 parties, mais 5 points.
Donc deux cas de figure: le joueur gagne, ou la machine gagne.

Code:
while (score1 < 5 and score2 < 5) :

Le code complet:

Code:
import random

def symboleAleatoire():
  n = random.randint(0, 2)
  if (n == 0):
    return "pierre"
  elif (n == 1):
    return "ciseaux"
  else:
    return "feuille"
   
def symboleJoueur():
  s = ""
  while (s != "pierre" and s != "feuille" and s != "ciseaux"):
    s = input ("Tapez 'pierre', 'feuille' ou 'ciseaux': ")
  return s
 
def comparer(s1, s2):
  if (s1 == s2):
    return 0
  elif (s1 == "pierre" and s2 == "ciseaux" or s1 == "feuille" and s2 == "pierre" or s1 == "ciseaux" and s2 == "feuille"):
    return 1
  else:
    return -1

# Le programme commence ici
score1 = 0
score2 = 0
victoire = 5

while (score1 < victoire and score2 < victoire) :
  print ("Joueur: " + str(score1) + " - Machine: " + str(score2))
  s1 = symboleJoueur()
  s2 = symboleAleatoire()
  print ("L'ordinateur joue " + s2)
  resultat = comparer(s1, s2)
  if (resultat == 1):
    print ("Gagné !")
    score1 = score1 + 1
  elif (resultat == -1):
    print ("Perdu !")
    score2 = score2 + 1
  else:
    print ("Égalité.")
  print ("_______________________________")
print ("Joueur: " + str(score1) + " - Machine: " + str(score2))
Ou https://repl.it/FAgY/5
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 16:04

l'ordi m'a piné par 5 à 2   maiiirdre !
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 16:09

Et est-ce qu'au moins tu comprends le programme et la logique derrière ?
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 16:12

Ca fonctionne mais il n'est pas content
à la ligne 21:
"too many boolean expressions in if statement (6/5)"
à la ligne 18
"redefining name 's1' from outer scope (ligne 33)"
"redefining name 's2' from outer scope (ligne 34)"
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 16:21

en fait la définition du jeu est là :

  elif (s1 == "pierre" and s2 == "ciseaux" or s1 == "feuille" and s2 == "pierre" or s1 == "ciseaux" and s2 == "feuille"):
  entre les "==" , "and" , et "or"

j'ai bon?
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 18:16

archibald de montpucier a écrit:Ca fonctionne mais il n'est pas content
Ce sont des warnings pas gênants. Mais à éviter quand-même Wink

La "définition" du jeu, j'ai rien compris Smile
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 18:33

L'enfant Voodoo a écrit:
archibald de montpucier a écrit:Ca fonctionne mais il n'est pas content
Ce sont des warnings pas gênants. Mais à éviter quand-même Wink

La "définition" du jeu, j'ai rien compris Smile
la formule pour que le jeu fonctionne si tu veux
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 19:47

Pourquoi "entre" ?
Les and, or et == sont les composantes principales de la formule. Sans elles, tu n'as que des données.
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Mer 11 Jan - 21:50

L'enfant Voodoo a écrit:Pourquoi "entre" ?
Les and, or et == sont les composantes principales de la formule. Sans elles, tu n'as que des données.
C'est ce que j essaye de t expliquer...C est grâce à ces composantes que fonctionne la formule...C'est du moins ce que j ai compris
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Mer 11 Jan - 21:51

On va la disséquer demain !
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Jeu 12 Jan - 8:21

Code:
def comparer(s1, s2):
  if (s1 == s2):
    return 0
  elif (s1 == "pierre" and s2 == "ciseaux" or s1 == "feuille" and s2 == "pierre" or s1 == "ciseaux" and s2 == "feuille"):
    return 1
  else:
    return -1

Alors, c'est ce qui va permettre de savoir qui a gagné.
C'est une fonction qui a deux paramètres en entrée, s1 et s2.
Ce sont des chaînes de caractères, des strings.
La fonction a aussi une valeur de retour, qui est le résultat du duel.
On a fixé arbitrairement: 1 en cas de victoire du premier joueur, -1 en cas de victoire du second joueur, 0 en cas d'égalité. On aurait pu faire autrement, comme je l'ai écrit, c'est arbitraire.

La valeur de retour s'envoie avec return.
Dans le cas de l'égalité - donc si s1 est pareil que s2 - on a dit qu'on renvoie 0, donc on l'écrit en python, ce qui donne:
Code:
if (s1 == s2):
    return 0
Ou en français: si s1 égale s2, renvoie 0.

S'il n'y a pas d'égalité, on teste si le premier est plus fort que le second, et si c'est vrai, on renvoie 1.
En français:
Sinon si s1 est pierre et s2 est ciseaux ou si s1 est feuille et s2 est pierre ou si s1 est ciseaux et s2 est fille, renvoie 1.
En python:
Code:
  elif (s1 == "pierre" and s2 == "ciseaux" or s1 == "feuille" and s2 == "pierre" or s1 == "ciseaux" and s2 == "feuille"):
    return 1
Tu vois qu'on ne fait que "traduire" en python ce qu'on exprime en français.

Si le joueur 1 n'a pas gagné et s'il n'y a pas d'égalité, c'est donc que le joueur 2 a gagné et qu'on peut renvoyer -1, d'où:
Code:
  else:
    return -1
[/code]
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Jeu 12 Jan - 17:25

Code:

import random
def symboleAleatoire():
  n = random.randint(0, 2)
  if (n == 0):
    return "roi"
  elif (n == 1):
    return "dame"
  else:
    return "valet"
   
def symboleJoueur():
  s = ""
  while (s != "roi" and s != "dame" and s != "valet"):
    s = input ("Tapez 'roi', 'dame' ou 'valet': ")
  return s
 
def comparer(s1, s2):
  if (s1 == s2):
    return 0
  elif (s1 == "roi" and s2 == "dame" or s1 == "valet" and s2 == "roi" or s1 == "dame" and s2 == "valet"):
    return 1
  else:
    return -1
# Le programme commence ici
score1 = 0
score2 = 0
victoire = 5
while (score1 < victoire and score2 < victoire) :
  print ("Joueur: " + str(score1) + " - Machine: " + str(score2))
  s1 = symboleJoueur()
  s2 = symboleAleatoire()
  print ("L'ordinateur joue " + s2)
  resultat = comparer(s1, s2)
  if (resultat == 1):
    print ("Gagné !")
    score1 = score1 + 1
  elif (resultat == -1):
    print ("Perdu !")
    score2 = score2 + 1
  else:
    print ("Égalité.")
  print ("_______________________________")
print ("Joueur: " + str(score1) + " - Machine: " + str(score2))
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Jeu 12 Jan - 17:28

en fait on peut programmer pas mal de jeux de cartes aussi...
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Jeu 12 Jan - 18:39

Oui, mais c'est pas aussi marrant que de jouer à la belote avec de vrais Marseillais, ou au poker avec des Texans !
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par archibald de montpucier Jeu 12 Jan - 19:15

L'enfant Voodoo a écrit:Oui, mais c'est pas aussi marrant que de jouer à la belote avec de vrais Marseillais, ou au poker avec des Texans !
oui ça manque de jaune et de "triches entre amis" pour les premiers et de whisky et de colt pour les seconds
mais chui sûr qu'on pourrait les inclure dans le programme...genre "tu triches, tu prends une balle et tu es éliminé" Le plus dur va être de programmer la triche...Y'a que dans un cerveau humain que ça peut se programmer...
archibald de montpucier
archibald de montpucier

Fonction : Majordome révoqué pour filouterie d'aliment (art 315-5 du code pénal) Fait la manche pour survivre
Messages : 21059
Date d'inscription : 16/05/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par L'enfant Voodoo Jeu 12 Jan - 20:47

Il y avait un jeu d'échecs dans lequel l'ordinateur trichait parfois. Il essayait de troubler le joueur avec des danseuses ou des trucs comme ça pendant qu'il faisait son coup...
L'enfant Voodoo
L'enfant Voodoo

Fonction : Influenceur nihiliste
Messages : 13995
Date d'inscription : 09/04/2016

Revenir en haut Aller en bas

Hello Python ! - Page 13 Empty Re: Hello Python !

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Page 13 sur 13 Précédent  1, 2, 3 ... 11, 12, 13

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum