Topic: Consiglio versione  (Letto 1136 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline Todek

  • python unicellularis
  • *
  • Post: 19
  • Punti reputazione: 0
    • Mostra profilo
Consiglio versione
« il: Settembre 27, 2014, 11:34 »
ciao a tutti, questa mi è sembrata la sezione corretta in cui postare. se ho sbagliato mi scuso in anticipo.

nel tempo libero (lontano dagli esami universitari) mi diletto con python da un annetto. purtroppo il mio impegno è abbastanza scostante quindi so giusto il minimo.

il mio dubbio è questo. ho trovato buone guide su 2.x (esempio http://www.youtube.com/playlist?list=PLC4DEDAECF24B855D)

ma ne ho trovate di molto buone anche su 3.x (esempio http://interactivepython.org/courselib/default/user/login?_next=/courselib/default/index)

penso di fare troppa confusione studiando in contemporanea due versioni diverse. quale mi consigliate? io andrei di 3.x ma purtroppo alcuni programmi come py2exe arrivano fino alla 2.7!

per ora mi diletto con la 2.7 ma se intendo andare avanti prima o poi sarò costretto a "tradurre" tutto per la 3.x.

Offline Giornale di Sistema

  • python sapiens sapiens
  • ******
  • Post: 3.124
  • Punti reputazione: 4
    • Mostra profilo
    • Distillato di Python
Re: Consiglio versione
« Risposta #1 il: Settembre 27, 2014, 11:56 »
Questione affrontata nel forum un numero di volte che inizia a tendere all'infinito. In breve:
  • hai codice legacy sviluppato in Python 2.x da mantenere? Hai librerie/framework che oltre la 2.x non vanno?
    Ti hanno chiesto specificatamente di sviluppare codice 2.x? In questi casi la risposta è forzata: 2.x
  • per tutto il resto c'è Python 3.4+

Offline riko

  • python deus
  • *
  • moderatore
  • Post: 7.453
  • Punti reputazione: 12
    • Mostra profilo
    • RiK0 Tech Temple
Re: Consiglio versione
« Risposta #2 il: Settembre 27, 2014, 14:31 »
Questione affrontata nel forum un numero di volte che inizia a tendere all'infinito. In breve:
  • hai codice legacy sviluppato in Python 2.x da mantenere? Hai librerie/framework che oltre la 2.x non vanno?
    Ti hanno chiesto specificatamente di sviluppare codice 2.x? In questi casi la risposta è forzata: 2.x
  • per tutto il resto c'è Python 3.4+

Aggiungo... trovi demenziale la gestione delle stringhe *esclusivamente* come unicode?
Vai di Python 2.

Vuoi scrivere qualcosa che vada in produzione e che sia piu' di un semplice giocattolo?
Python 2.

Python 3 non ha molto che non va... ma non ha manco molto che faccia davvero venire voglia di cambiare.
Con la possibile eccezione di AsyncIO.... ah, ma li: https://pypi.python.org/pypi/trollius

Sebbene non so se mi fiderei a metterlo in produzione.

Offline Todek

  • python unicellularis
  • *
  • Post: 19
  • Punti reputazione: 0
    • Mostra profilo
Re: Consiglio versione
« Risposta #3 il: Settembre 27, 2014, 15:08 »
in pratica le vostre risposte sono leggermente opposte  :confused:.

non ho niente da mantenere di importante. ma se faccio qualcosa di carino voglio avere la possibilità di distribuirlo stand-alone

Offline Giornale di Sistema

  • python sapiens sapiens
  • ******
  • Post: 3.124
  • Punti reputazione: 4
    • Mostra profilo
    • Distillato di Python
Re: Consiglio versione
« Risposta #4 il: Settembre 27, 2014, 15:48 »
Aggiungo... trovi demenziale la gestione delle stringhe *esclusivamente* come unicode?
Vai di Python 2.

Qualcosa per ridurre le incompatibilità a livello di sintassi è stata comunque fatta:
[codice]Python 3.4.1 (default, Jul  5 2014, 00:14:15)
[GCC 4.6.3] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> foo = u"Stringa in Python 3.3+"
>>> foo, type(foo)
('Stringa in Python 3.3+', <class 'str'>)
[/codice]

Offline Giornale di Sistema

  • python sapiens sapiens
  • ******
  • Post: 3.124
  • Punti reputazione: 4
    • Mostra profilo
    • Distillato di Python
Re: Consiglio versione
« Risposta #5 il: Settembre 27, 2014, 15:56 »
non ho niente da mantenere di importante. ma se faccio qualcosa di carino voglio avere la possibilità di distribuirlo stand-alone

E se per farlo ti riferisci a

alcuni programmi come py2exe arrivano fino alla 2.7!

rientri nelle casistiche che citavo per scegliere Python 2.x.
E Riko ha aggiunto ulteriori motivazioni in ottica "lavorativa attuale" per farlo.

Solo tu puoi valutare al meglio le tue esigenze di apprendimento attuali,
per il futuro lavoro che farai non è detto che nella pletora di linguaggi in cui programmerai ci sarà Python.

Offline Todek

  • python unicellularis
  • *
  • Post: 19
  • Punti reputazione: 0
    • Mostra profilo
Re: Consiglio versione
« Risposta #6 il: Settembre 27, 2014, 16:10 »
soprattutto non è detto che programmerò mai nel mio lavoro (al massimo matlab ma quello lo so giù usare), è più un hobby.

continuerò con la 2.7 per il momento, almeno finchè py2exe e affini non diventeranno compatibili  :ok:

Offline riko

  • python deus
  • *
  • moderatore
  • Post: 7.453
  • Punti reputazione: 12
    • Mostra profilo
    • RiK0 Tech Temple
Re: Consiglio versione
« Risposta #7 il: Settembre 27, 2014, 18:16 »
al massimo matlab ma quello lo so giù usare

Mi dispiace...

Fortunatamente c'e' di meglio ed e' gratis...