Aide Programmation python

Aide Programmation python - Python - Programmation

Marsh Posté le 06-03-2017 à 17:57:50    

Bonjour a tous actuellement j'apprend le langage de programmation et j'ai atteint un certain niveau ou je connait les mots-clefs de python mais quand j'ai regarder un programme sur internet je n'y comprenez absolument rien et je voudrais que quelqu'un si possible m'explique en detail ce programme pour que je puisse m'y faire une idée MERCI.
je vous laisse le programme ci dessous:
 
 
from tkinter import *
from random import randrange
 
 
 
def move():
    global x
    global y,pX,pY
    global Serpent
    can.delete('all')
    i=len(Serpent)-1
    j=0
    while i > 0:
        Serpent[i][0]=Serpent[i-1][0]
        Serpent[i][1]=Serpent[i-1][1]
        can.create_oval(Serpent[i][0], Serpent[i][1], Serpent[i][0] +10, Serpent[i][1]+10,outline='red', fill='red')  
        i=i-1
 
 
 
     
    can.create_rectangle(pX, pY, pX+10, pY+10, outline='white', fill='white')
     
 
    if direction  == 'gauche':
        Serpent[0][0]  = Serpent[0][0] - dx
        if Serpent[0][0] < 0:
            Serpent[0][0] = 493
    elif direction  == 'droite':
        Serpent[0][0]  = Serpent[0][0] + dx
        if Serpent[0][0] > 493:
            Serpent[0][0] = 0
    elif direction  == 'haut':
        Serpent[0][1]  = Serpent[0][1] - dy
        if Serpent[0][1] < 0:
            Serpent[0][1] = 493
    elif direction  == 'bas':
        Serpent[0][1]  = Serpent[0][1] + dy
        if Serpent[0][1] > 493:
            Serpent[0][1] = 0
    can.create_oval(Serpent[0][0], Serpent[0][1], Serpent[0][0]+10, Serpent[0][1]+10,outline='red', fill='red')  
    test()
    test()
 
    if flag != 0:
        fen.after(60, move)
 
def newGame():
    global pX,pY
    global flag
    if flag == 0:
        flag = 1
    move()
 
def left(event):
    global direction
    direction = 'gauche'
 
def right(event):
    global direction
    direction = 'droite'
 
def up(event):
    global direction
    direction = 'haut'
 
def down(event):
    global direction
    direction = 'bas'
 
def test():
    global pomme
    global x,y,pX,pY
    global Serpent
    if Serpent[1][0]>pX-7 and  Serpent[1][0]<pX+7:        
        if Serpent[1][1]>pY-7 and Serpent[1][1]<pY+7:
           
            pX = randrange(5, 495)
            pY = randrange(5, 495)
            can.coords(pomme,pX, pY, pX+5, pY+5)
     
            Serpent.append([0,0])
             
 
x = 245
y = 24        
dx, dy = 10, 10
flag = 0
direction = 'haut'
Serpent=[[x,y],[x+2.5,y+2.5],[x+5,y+5],[0,0]]
 
pX = randrange(5, 495)
pY = randrange(5, 495)
 
fen = Tk()
can = Canvas(fen, width=500, height=500, bg='black')
can.pack(side=TOP, padx=5, pady=5)
 
 
oval1=can.create_oval(Serpent[1][0], Serpent[1][1], Serpent[1][0] +10, Serpent[1][1]+10, outline='red', fill='red')
 
oval = can.create_oval(Serpent[0][0], Serpent[0][1], Serpent[0][0]+10, Serpent[0][1]+10, outline='red', fill='red')
 
pomme = can.create_rectangle(pX, pY, pX+5, pY+5, outline='green', fill='black')
 
b1= Button(fen, text='Lancer', command=newGame, bg='black' , fg='green')
b1.pack(side=LEFT, padx=5, pady=5)
 
b2 = Button(fen, text='Quitter', command=fen.destroy, bg='black' , fg='green')
b2.pack(side=RIGHT, padx=5, pady =5)
 
 
fen.bind('<KeyPress-Right>', right)
fen.bind('<KeyPress-Left>', left)
fen.bind('<KeyPress-Up>' , up)
fen.bind('<KeyPress-Down>', down)
 
 
fen.mainloop()[#FF3800]

Citation :

Citation :



[/#0000FF]

Reply

Marsh Posté le 06-03-2017 à 17:57:50   

Reply

Marsh Posté le 06-03-2017 à 19:54:45    

Citation :

Bonjour a tous actuellement j'apprend le langage de programmation et j'ai atteint un certain niveau ou je connait les mots-clefs de python mais quand j'ai regarder un programme sur internet je n'y comprenez absolument rien

alors ton niveau n'est pas encore suffisant et il faut continuer d'apprendre :o . Sérieusement, je n'ai jamais appris le Python mais je comprends le code, c'est vraiment basique. Avec un moteur de recherche et un peu de bonne volonté tu peux y arriver sans problème, c'est comme ça qu'on apprend.

Reply

Marsh Posté le 07-03-2017 à 15:24:11    

Je pense que ce que tu as appris n'est pas suffisant.
 
La syntaxe d'un langage c'est nécessaire, mais ça ne t'apprend absolument pas à programmer.
La programmation, c'est apprendre à décomposer un problème en une suite de problèmes simples et compréhensibles par une machine.
 
Avant d'essayer de comprendre le code que tu as posté, il faut que tu aies quelque bases, que tu suives des tutoriels pour faire de petits programmes simples.
 
Avec ces bases, essayer de comprendre un programme plus complexe et formateur. Sans, tu vas te noyer.


---------------
sheep++
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed