[Python] Errore di tipo
Prima di tutto, un saluto a tutta la lista dato che sono un nuovo iscritto, ma soprattutto sono nuovo nella programmazione in python. Vorrei quindi scusarmi in anticipo se le mie domande saranno di bassissimo livello, ma dopotutto si inizia dal basso, e spero che "sopporterete" le mie elementari domande. Passiamo al mio problema, come primo script per provare un po il linguaggio ho scritto questo: from System.IO.Ports import SerialPort serial = SerialPort(PortName="COM2",BaudRate=9600,DataBits=8) serial.Open() serial.Write("Ettore\n") returnValue = serial.ReadLine() print returnValue serial.Close() serial.Dispose() Niente da dire funziona. Ora volevo fare un test per vedere se la porta veniva aperta, in caso contrario volevo una stringa di errore per cui ho modificato così: from System.IO.Ports import SerialPort serial = SerialPort(PortName="COM2",BaudRate=9600,DataBits=8) serial.Open() if serial.IsOpen() is None: print "Impossibile aprire la porta" else: serial.Write("Ettore\n") returnValue = serial.ReadLine() print returnValue serial.Close() serial.Dispose() Quando lo eseguo mi trovo questo errore: "TypeError: Boolean is not callable" Dove concettualmente stò sbagliando? Grazie a tutti in anticipo per le cortesi spiegazioni che vorrete darmi Ettore aka Netstrike ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Errore di tipo
Il giorno 23 febbraio 2010 11.08, Marco Dalla Stella < m.dallaste...@gmail.com> ha scritto: > Il 23 febbraio 2010 11.05, Netstrike ha scritto: > > Prima di tutto, un saluto a tutta la lista dato che sono un nuovo > iscritto, > > ma soprattutto sono nuovo nella programmazione in python. > > Benvenuto! :) > Grazie mille della celerissima risposta! > > if serial.IsOpen() is None: > > Credo che il problema sia qui, infatti, molto probabilmente IsOpen è > un attributo booleano e non una funzione, per cui non è "callable". Il > controllo corretto dovrebbe essere semplicemente il seguente: > > if serial.IsOpen: > In effetti il problema era proprio li. Oltre al python credo che io debba imparare molto altro... (metodi, proprietà) Grazie. Ettore ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Errore di tipo
Il giorno 23 febbraio 2010 11.19, Valerio Turturici < turturici.vale...@gmail.com> ha scritto: > Netstrike ha scritto: > > Prima di tutto, un saluto a tutta la lista dato che sono un nuovo > > iscritto, > > ma soprattutto sono nuovo nella programmazione in python. > Ottima scelta Python ;) > Grazie, sono contento della scelta, con 12 righe di codice leggo e scrivo sulla seriale... non vedo l'ora di scoprire tutto il resto! > > Vorrei quindi scusarmi in anticipo se le mie domande saranno di > > bassissimo livello, > > ma dopotutto si inizia dal basso, e spero che "sopporterete" le mie > > elementari domande. > Nessuno nasce imparato ;) > > > > if serial.IsOpen() is None: > > > A occhio credo che il problema sia qua, IsOpen probabilmente non è una > funzione, ma un booleano. Controlla la doc. Si, devo prestare molta più attenzione alla documentazione... la fretta non è mai una buona compagna di viaggio, soprattutto ora che stò iniziando. Ettore ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] TextBox multiline e carattere di newline
Per imparare un po il linguaggio stò creando un semplice programmino che legge i dati da una TextBox mi scrive su seriale il dato, e legge da seriale i dati ricevuti in risposta. (Attualmente sulla seriale ho ponticellato rx con tx quindi ho un semplice echo della trasmissione) Sono riuscito a fare tutto, ora il mio problema è che: quando vado a scrivere il dati ricevuti sulla textbox (multiline) non riesco a dargli il carattere di newline. +"\n" non funziona +chr(10) non funziona +'\x0A' non funziona Dove sbaglio? Il segmento di codice è: serial = SerialPort(PortName=CPort,BaudRate=9600,DataBits=8) # Inizializzo la seriale serial.ReadTimeout = 500 serial.WriteTimeout = 500 serial.Close() serial.Open() # Apro la porta print "TX:"+txBuff # Debug serial.Write(txBuff+"\n") # Scrivo sulla seriale rxBuff = serial.ReadLine() # Leggo dalla seriale print "RX:"+rxBuff+"\n" # Debug rxTbox.Text += rxBuff+'\x0A' # Inserisco nella Textbox (rxTbox) il dato ricevuto + il carattere di newline serial.Close()# Chiudo la seriale Grazie Ettore ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] TextBox multiline e carattere di newline
Il giorno 23 febbraio 2010 17.04, Netstrike ha scritto: > Per imparare un po il linguaggio stò creando un semplice programmino che > legge i dati da una TextBox mi scrive su seriale > il dato, e legge da seriale i dati ricevuti in risposta. > (Attualmente sulla seriale ho ponticellato rx con tx quindi ho un semplice > echo della trasmissione) > Sono riuscito a fare tutto, ora il mio problema è che: quando vado a > scrivere il dati ricevuti sulla textbox (multiline) > non riesco a dargli il carattere di newline. > > +"\n" non funziona > +chr(10) non funziona > +'\x0A' non funziona > > Dove sbaglio? > Mi rispondo da solo e spero possa essere utile a tutti. Sulla TextBox per andare a capo occorre inserire '\015\013'. Ciao a tutti Ettore ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] TextBox multiline e carattere di newline
Il giorno 23 febbraio 2010 20.58, Netstrike ha scritto: > > Mi rispondo da solo e spero possa essere utile a tutti. > Sulla TextBox per andare a capo occorre inserire '\015\013'. > > Scusate ho sbagliato a scrivere: '\015\012' Ettore ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] TextBox multiline e carattere di newline
Il giorno 26 febbraio 2010 13.43, Mattsteel Mattsteel ha scritto: > > Scusate ho sbagliato a scrivere: '\015\012' > > Ettore > > ... che guardacaso equivale a '\r\n' > > >>> x="\015\012" > >>> x > '\r\n' > Si, ma se metti sulla stringa direttamente '\n\r' la TextBox non va a capo... Ciao Ettore ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] TextBox multiline e carattere di newline
Il giorno 26 febbraio 2010 14.07, Marco Beri ha scritto: > 2010/2/26 Netstrike > > Il giorno 26 febbraio 2010 13.43, Mattsteel Mattsteel < >> mattst...@hotmail.it> ha scritto: >> >> > Scusate ho sbagliato a scrivere: '\015\012' >>> > Ettore >>> >>> ... che guardacaso equivale a '\r\n' >>> >>> >>> x="\015\012" >>> >>> x >>> '\r\n' >>> >> Si, ma se metti sulla stringa direttamente '\n\r' la TextBox non va a >> capo... >> > > Perche` devi mettere "\r\n" :-) > Ricordavo di aver provato anche con "\n\r" ma per sicurezza ho rifatto la prova: rxTBox.Text = "Prova" + "\n\r" + "Prova"<-Non funziona rxTBox.Text = "Prova" + '\n\r' + "Prova" <-Non funziona rxTBox.Text = "Prova" + "\015\012" + "Prova"<-Funziona Ciao Ettore ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python