Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Problemi con python

    Salve a tutti, sono nuovo, appena registrato e ne approfitto per presentarmi e salutarvi, oltre che per esporre il problema. Sono uno studente, ho 21 anni a breve comincierò un corso di programmazione molto ben fatto e volevo avvantaggiarmi un pò cominciando già da ora a fare qualcosa. Visto che di computer so pochissimo, e men che meno di programmazione, tuttavia mi è presa una passione improvvisa ed ho appena cominciato a studiare. Dopo un pò di informazione sulla parte hardware dei pc e sul protocollo tcp/ip, non sapevo assolutamente niente di tutto. Ho voglia di cominciare a comprendere il mondo complicato della programmazione, facendo un pò di ricerca mi sono informato sul linguaggio più adatto con cui cominciare, ed è risultato vincente Python. Tuttavia sto riscontrando problemi con comandi semplicissimi. sto seguendo un manuale per principanti, il quale usa la versione 1.5.2 (quindi moooolto indietro), e nonostante lavoro con la stessa versione, sto riscontrando dei problemi. ad esempio $ non viene più riconosciuto, indicandomi un "SyntaxError" ecc... però, dice il manuale, è un comando necessario per lanciare l'interprete ($ python).

    Ho problemi anche con l'esecuzione dello script.
    Ad esempio scrivo print 1 + 1, salvo lo script chiamandolo "pippo", eseguo python e scrivo $ python pippo.py... dovrebbe indicare 2 come risultato, invece mi da il solito "SyntaxError" e non capisco il perchè.

    Visto che è un problema molto marginale, sto continuando lo studio del manuale senza eseguire script. Tuttavia ho sempre trovato molto frustante in generale, il non capire il perchè succede una cosa, specialmente quando non funziona come dovrebbe.

    Grazie in anticipo per l'aiuto, anche se non dovesse arrivare, e spero di non annoiarvi, anche se per molti di voi potrebbe sembrare un quesito stupido, per me che ho appena cominciato ad affacciarmi in questo splendido mondo, risulta molto complicato procedere.

  2. #2
    scrivi solo python, '$' indica di solito la linea di comando

  3. #3
    grazie mille.. ho risolto era una stupidaggine, ma ne approfitto per porti un altro quesito.

    Sono arrivato al punto in cui spiega come creare una nuova funzione, la sintassi è la seguente:
    def NOME( LISTA_DEI_PARAMETRI ) :
    ISTRUZIONI
    il manuale spiega come farmi creare una funzione che stampa una riga vuota, come per lasciare uno spazio libero, la funziona creata sarebbe questa:
    def UnaRigaVuota() :
    print

    ora dovrei richiamare le seguenti funzioni

    print "Prima riga."
    UnaRigaVuota()
    print "Seconda riga."

    il risultato del programma dovrebbe essere

    Prima riga.

    Seconda riga.

    lo spazio tra le due righe dovrebbe essere opera della funzione appena creata, giusto?
    Il problema però è solo uno, quando scrivo print "Prima riga." non riesco ad andare a capo senza che il programma svolga in automatico l'operazione.. per cui mi da subito il risultato:

    Prima riga.
    poi effettivamente scrivendo la funzione UnaRigaVuota() e premendo invio lascia uno spazio vuoto. Tuttavia il risultato è il seguente:

    print "Prima riga."
    Prima riga.
    UnaRigaVuota()

    print "Seconda riga."
    Seconda riga.

    effettivamente la funzione funziona XD, ma non volevo arrivare a quel risultato un operazione alla volta, non riesco a capire come far svolgere tutte le operazioni insieme, quindi il problema credo sia il fatto che non riesco ad andare a capo, senza che la funzione che do si sviluppi.

    Spero di essere stato chiaro, altrimenti rispiego e cerco di essere comprensibile XD

  4. #4
    Python può leggere i comandi da un file (script) ed eseguirli.
    crea un file prova.py con questo contenuto:

    codice:
    def UnaRigaVuota() :
        print
    
    print "Prima riga."
    UnaRigaVuota()
    print "Seconda riga."
    Questo può essere eseguito digitando nella linea di comando
    codice:
    python prova.py

  5. #5
    Quello che hai scritto è giustissimo.. ma il problema è proprio che nello script, non riesco ad andare a capo, senza che mi svolge il comando, ad esempio: scrivendo print"Prima riga." e premendo invio per andare a capo.. immediatamente lui svolge l'operazione di print.. insomma non riesco ad andare a capo senza che esegua i comandi immediatamente.

    Asp forse ho capito, ti aggiorno a breve.. grazie ancora comunque ^^

    allora.. ho creato lo script chiamandolo prova con tutte le funzioni indicate.. metto l'interprete e digito: python prova.py
    ma risponde con : File "<stdin>", line 1
    python prova.py
    ^
    SyntaxError: invalid syntax

  6. #6
    python prova.py è un comando che deve eseguire il terminale. scrivendo solo python invochi l'interprete, con python [nome_file.py] esegui uno script

  7. #7
    Ho risolto il problema dello script, grazie a te, ora però si presenta un altro tipo di problema, python non sembra riconoscere le funzioni else ed elif.. ad esempio scrivo:
    if x > y:
    print " x maggiori di y"
    elif x < y:
    print " x minore di y"

    Ma alla funzione elif Python risponde con un errore di sintassi

  8. #8
    usa il tag CODE quando posti il codice.

    hai indentato correttamente il codice?
    codice:
    if x > y:
        print " x maggiori di y"
    elif x < y:
        print " x minore di y"

  9. #9
    se stai usando la versione di python 3.x fai attenzione print("va incluso tra parentesi") letto dopo che usi la versione antica, cmq se richiami python dal terminal prende una versione di default... hai controllato che sia quella che intendi usare veramente?

  10. #10
    Hai ragione sorry^^, la prossima volta starò attento.. ad ogni modo, ho scritto tutto correttamente, inoltre non è la versione di default. Per ora il problema è facilmente aggirabile mettendo un altro if, visto che le condizioni possibili sono 2, il programma dovrebbe girare e darmi comunque lo stesso risultato.. che poi così si è verificato. tuttavia non credo che questa possa essere una soluzione definitiva, sopratutto per gli esercizi più complicati, staremo a vedere.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.