Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2023-24 loggatevi e attivatelo nella vostra pagina dei corsi preferiti. A quel punto il corso appare nel menù personale cliccando sul proprio avatar. Per i materiali degli anni precedenti seguite lo stesso metodo.

To join the Programming/Lab 2023-24 course, log-on and select it on the my courses page. It will appear on the personal menu of your avatar. For earlier years use the same method.

Righe commentate (l'esecuzione di un codice python viene rallentata dai commenti?)

Mich1803 (2620 points)
14 40 58
in Programmare in Python by (2.6k points)
closed by
Devo rimuovere i miei commenti all'interno del source code? Possono rallentare il mio codice?
348 views
closed

4 Answers

Best answer
anon3 (10560 points)
20 66 138
by (10.6k points)
selected by
Le righe contrassegnate da # vengono completamente skippate, che si tratti di esecuzione del programma o test. Di conseguenza non dovrebbero esserci rallentamenti di sorta, dato che la macchina non "legge" il contenuto del commento; che la sua lunghezza sia di un carattere o di molteplici frasi non le interessa. L'unica cosa che "legge" (nel senso che interpreta come una sorta di comando)è l'# stesso, quindi il "massimo sforzo" che (forse) potrebbe compiere è quello di mettersi a saltare un numero spropositato di #, immagina l'inserimento di un migliaio di commenti distribuiti per tutto il source code. Ma credo che addirittura in questo caso si tratti di un tempo considerabile infinitesimale.

Per avere la certezza bisognerebbe provarlo con mano.

Anche su Quora (https://www.quora.com/Do-comments-slow-down-Python) avevano posto una domanda del genere, sulla relazione tra # e performance.

Comunque, a prescindere da tutto questo discorso, nel nostro caso dell'HW 2 useremo anche quel file .txt, quindi scrivere commenti non è strettamente utile o necessario.
S
Shenok (1590 points)
0 0 10
by (1.6k points)
Non mi pare che sia scritto da alcuna parte di dover rimuovere tutti i commenti presenti, direi quindi di no, non è necessario
dragomirdavid (4470 points)
1 2 17
by (4.5k points)
Puoi anche tenerli, l'importante è che commenti le print fuori dal main e non inserisci nessun input all'interno del programma.
Mich1803 (2620 points)
14 40 58
by (2.6k points)
Ho letto che nei linguaggi interpretati, tra cui python, lunghi blocchi di commenti possono rallentare il programma. Infatti, a differenza dei linguaggi compilati in cui vengono immediatamente eliminati, l'interprete deve prima leggerli e poi eliminarli. Quindi magari eliminando i commenti riesco a guadagnare qualche piccolo piccolo millisecondo.
dragomirdavid (4470 points)
1 2 17
by (4.5k points)

Eliminali, ma come efficienza complessiva non cambierà più di tanto. Ti consiglio di leggere questo articolo: https://qr.ae/pvlyRV

Mich1803 (2620 points)
14 40 58
by (2.6k points)
Ho appena riconsegnato l'homework ed ho guadagnato, non dico molto, ma un po' di tempo che mi ha permesso di salire in classifica. Adesso non so se è una coincidenza o se is that a thing.

(p.s. pensavo di modificare questo thread e cambiargli categoria per ampliare la discussione a riguardo, magari può essere utile anche fuori dal contesto dell'homework.)
Mich1803 (2620 points)
14 40 58
by (2.6k points)
avevo dato un occhiata a questo: https://qr.ae/pvlysf
SyncroIT (8690 points)
11 30 98
by (8.7k points)
Nel momento in cui il programma viene eseguito e vengono calcolati i tempi per le performance, i commenti sono già ignorati dall'interprete quindi dubito avere dei commenti all'interno possa rallentare in qualche modo l'esecuzione del programma.
Volendo potete provare a submittare qualche centinaio/migliaio di righe commentate e vedere che l'efficienza non cambia.