[GUIDA] Uso di Turtle su Spyder su Windows

1
1937764 (3520 points)
6 14 42
asked Oct 13, 2020 in Programmare in Python by 1937764 (3,520 points)
edited Dec 1, 2020 by andrea.sterbini

Durante la lezione di oggi 13/10/2020, si è visto che eseguendo un file che usa Turtle su Spyder su Windows fa bloccare il programma senza risposta.

Esempio di codice che usa Turtle (disegno di un quadrato 100x100):

from turtle import Turtle, done
tartaruga = Turtle()

for i in range(4):
    tartaruga.forward(100)
    tartaruga.right(90)

done()
bye()

Esecuzione con Spyder su Windows:

  • Da Spyder, creiamo un nuovo file (CTRL+N)
  • Scriviamo un codice che usa Turtle, come nell'esempio a inizio post
  • Premendo sul tasto per l'esecuzione (Run file, freccia verde), apparirà la seguente finestra di dialogo:

Bisognerà selezionare l'opzione "Execute in an external system terminal".

Fatto ciò, si può eseguire premendo sul tasto Run.


Problemi comuni

Non si apre la finestra dello screenshot

Premere CTRL+F6

Can't open file: [Errno 2] No such file or directory

Prima di eseguire il file, questo andrà salvato (tasto in alto di salvataggio, oppure CTRL+S)

Il programma si chiude immediatamente dopo aver disegnato

Si può inserire i comandi done() bye() alla fine del file per sospendere l'esecuzione del programma per 5 secondi (è presente nel modulo turtle).

In alternativa, si può eseguire il file in Debug (tasto freccia blu, oppure CTRL+F5), scrivendo nel prompt il comando continue per iniziare l'esecuzione.

1,227 views

11 Answers

giordano_sannino (13650 points)
7 16 81
answered Oct 13, 2020 by giordano_sannino (13,650 points)
Utilissimo grazie
Rametto (4910 points)
3 4 25
answered Oct 13, 2020 by Rametto (4,910 points)
thank you, ora mi funziona il programma
dolcetto_gommoso (2790 points)
3 6 18
answered Oct 13, 2020 by dolcetto_gommoso (2,790 points)
Grazie ora va alla perfezione
raponi.federico (11240 points)
2 4 21
answered Oct 13, 2020 by raponi.federico (11,240 points)

Nel mio caso per evitare l'arresto del programma è bastato importare la funzione done() dalla libreria turtle e inserirla subito dopo da chiamata della funzione.(Windows)

from turtle import Turtle, done

tartaruga = Turtle()

for i in range(4):
    tartaruga.forward(100)
    tartaruga.left(90)
    
done()

1
1937764 (3520 points)
6 14 42
commented Oct 13, 2020 by 1937764 (3,520 points)
Post aggiornato, grazie!
raponi.federico (11240 points)
2 4 21
commented Oct 13, 2020 by raponi.federico (11,240 points)
Perfetto, di niente.
L
Lorenzo Spataro (2710 points)
0 0 12
commented Oct 21, 2020 by Lorenzo Spataro (2,710 points)
Aggiungo a quanto detto da federico che su Spyder è molto probabile che, alla seconda esecuzione di un programma che utilizzi la libreria turtle, la finestra "di disegno" non risponda e così via per le esecuzioni successive.
Per risolvere questo problema (legato al kernel di ipython) è necessario chiamare il metodo bye() dopo done(), esso permette di "pulire" quello che era stato eseguito precedentemente e aprire correttamente la finestra.
1
1937764 (3520 points)
6 14 42
commented Oct 21, 2020 by 1937764 (3,520 points)
Aggiornato, grazie!
Loriv3 (7960 points)
8 20 84
answered Oct 13, 2020 by Loriv3 (7,960 points)
Se a qualcuno non comparisse la finestra può tranquillamente premere ctrl+F6 in modo da aprirla
e
eleonora.cafaro (1130 points)
2 4 9
commented Oct 13, 2020 by eleonora.cafaro (1,130 points)
Grazie, perchè come fa lui si apre direttamente la pagina buggata, come se scrivessi ovviamente nella console . Almeno a me, grazie mille
1
1937764 (3520 points)
6 14 42
commented Oct 13, 2020 by 1937764 (3,520 points)
Post aggiornato, grazie!
lcrainic (3320 points)
2 4 25
answered Oct 13, 2020 by lcrainic (3,320 points)
Grazie ora su Windows funziona perfettamente, volevo provare più tardi su MacOS e vedere se ho gli stessi problemi che avevo con Windows.
1
1934865 (700 points)
0 2 4
answered Oct 13, 2020 by 1934865 (700 points)
It workes fine for me now, however after editing little things (like range or the angle it changes direction in)  pyhon turtle graphic crashes and i have to re open it, i am guessing it is normal
andrea.sterbini (167420 points)
487 897 1726
answered Oct 13, 2020 by andrea.sterbini (167,420 points)
Grazie! (io uso Linux, una mano su M$ Windo$ fa sempre comodo)
Fabioerpini (7970 points)
6 10 27
answered Oct 14, 2020 by Fabioerpini (7,970 points)
Grazie mille
1
1937842 (3900 points)
4 8 11
answered Oct 15, 2020 by 1937842 (3,900 points)
Molto utile grazie