Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2014
    residenza
    Mantova
    Messaggi
    66

    [Python] Differenze di sintassi tra la versione 3.4 e le versioni precedenti

    In questo periodo sto imparando Python e mi trovo spesso in difficoltà riguardo alle differenze di sintassi tra la mia versione e quella alla quale fanno riferimento le guide ed i tutorial che si trovano in rete.

    Cosa mi consigliate di fare non perdere tempo e scervellarmi di meno: cerco una guida aggiornata oppure mi conviene installare una versione precedente? Dato che un giorno mi piacerebbe possa diventare un lavoro, trovate possa essere controproducente la seconda ipotesi?

  2. #2
    Di fatto ci sono due "serie" di versioni di Python: la 2.x e la 3.x; la serie 2.x è sostanzialmente terminata alla 2.7.qualcosa, ma di fatto resta ancora la più usata, dato che la serie 3 introduce una serie di cambiamenti incompatibili. La serie 3 ormai è in giro da un pezzo e dovrebbe essere il futuro, hanno approfittato della rottura di compatibilità per sistemare un po' di magagne che si erano accumulate (anche se a mio avviso stanno introducendo complessità in maniera gratuita in un linguaggio che aveva nella semplicità uno dei suoi punti di forza).
    In linea di massima, comunque, quando leggi un articolo la cosa fondamentale da sapere è se si riferisce alla serie 2 o alla serie 3, la minor release precisa non è così importante (ci sono aggiunte, ma comunque qualunque articolo attuale relativo a Python 2 si riferisce inevitabilmente alla 2.7, e su Python 3, a meno di scomodare feature ultranuove, più o meno qualunque cosa dalla 3.2 in poi va bene).

    Sul discorso Python 2 vs Python 3, la risposta è "dipende dal codice su cui devi lavorare"; praticamente chiunque abbia una base di codice significativa in Python 2 continua a lavorare in Python 2, mentre per progetti nuovi molti usano Python 3 (anche se non è detto - alcune librerie non sono state ancora portate completamente a Python 3, oppure tanti sono familiari con Python 2 e usano quello - anche perché è meno un moving target rispetto a Python 3).
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2014
    residenza
    Mantova
    Messaggi
    66
    Molto chiaro, saresti così gentile da dirmi cosa devo modificare in queste righe di codice per farlo correre sul Python 3.4? Le parentesi dopo il print e input al posto di raw_input ci sonoa rrivato da solo, ma mi da altri errori...

    codice:
    print ('Welcome to the Pig Latin Translator!')
    original = input("Enter a word:")
    if len(original)>0:
        print original
    else:
            print "empty"

  4. #4
    È sbagliata l'indentazione dell'ultima riga (ma quella è indipendente dalla versione di Python).
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2014
    residenza
    Mantova
    Messaggi
    66
    No, mi da un errore di sintassi alla fine dell'ultima riga...

  6. #6
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    E' sbagliata l'indentazione e print in python 3 è una funzione quindi devi usare le parentesi: print(parametri)
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2014
    residenza
    Mantova
    Messaggi
    66
    Ok ho sistemato l'indentazione dell'ultima riga, ma la parentesi dopo print c'era già...

  8. #8
    Quote Originariamente inviata da Mark Lenders Visualizza il messaggio
    Ok ho sistemato l'indentazione dell'ultima riga, ma la parentesi dopo print c'era già...
    Sulla print dell'ultima riga no... o almeno, non nella versione che hai postato qui.
    Amaro C++, il gusto pieno dell'undefined behavior.

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2014
    residenza
    Mantova
    Messaggi
    66
    Ai ai...allora dev'esserci sotto qualcos'altro....
    Anche con Pascal capitava che chiedevo supporto qui sul forum e mi dicevano che invece il codice che postavo era giusto!
    Gli altri utenti parlavano di un possibile problema all'IDE del mio computer, avete idea di cosa si possa trattare?

    Per curiosità posto uno screen del mio lavoretto:

    Cattura.jpg

  10. #10
    Ma scusa, ci prendi in giro? Anche nello screenshot mancano le parentesi sulle print...
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.