Geco_Inf Inserito: 2 giugno 2017 Segnala Inserito: 2 giugno 2017 Buongiorno a tutti, non sò se è la categoria giusta, ho un quesito, ho scritto questo programmino che deve vedere la presenza di energia elettrica, all'assenza di questa deve mandare una mail e avvisare anche al ritorno. sembri funzionare bene, ma non mi da il ciclo infinito che while dovrebbe fornire, tanto che in compilazione al verificarsi di una delle due condizioni la esegue giustamente ma poi si chiude e non va avanti. chi mi può aiutare? Grazie mille. incollo qui di seguito il programmino: #!/bin/usr/python import smtplib import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) GPIO.setwarnings(False) GPIO.setup(26, GPIO.IN) fromaddr = 'mittente@gmail.com' toaddrs = 'destinatario@gmail.com' msg = "\r\n".join([ "From: mittente@gmail.com", "To: destinatario@gmail.com", "Subject: Assenza rete elettrica", "", "E' incorso un assenza di energia elettrica" ]) msg2 = "\r\n".join([ "From: mittente@gmail.com", "To: destinatario@gmail.com", "Subject: Ripristino rete elettrica", "", "energia elettrica si e' ripristinata" ]) username = 'mittente@gmail.com' password = 'xxx' server = smtplib.SMTP('smtp.gmail.com:587') cont = 0 print("1",cont) condi = True while condi: pippo = GPIO.input(26) while (pippo == GPIO.LOW): #NO CORRENTE server.starttls() server.login(username,password) server.sendmail(fromaddr, toaddrs, msg) #server.quit() #time.sleep(30) cont = cont + 1 print("4",cont) if (cont > 0): print("2") server.starttls() server.login(username,password) server.sendmail(fromaddr, toaddrs, msg2) #server.quit() else: print("3") cont = cont + 1 #Geco_Inf
Livio Orsini Inserita: 2 giugno 2017 Segnala Inserita: 2 giugno 2017 Forse sono io che son distratto, ma non vedo la chiusura del While
Geco_Inf Inserita: 2 giugno 2017 Autore Segnala Inserita: 2 giugno 2017 No Livio, non è distratto... non c'è, non so ancora usare molto i linguaggi, quindi non sapevo andassero chiusi, ora mi vedo come si fa la ringrazio tantissimo. Quando le è comodo può dirmi come si fa, dopo averle risposto ho fatto una breve ricerca ma non riesco a capire, ho visto che in C si usano le {} ma in python non mettono nulla... O son io che non capisco?! Grazie acora
Livio Orsini Inserita: 3 giugno 2017 Segnala Inserita: 3 giugno 2017 Python è un linguaggio che non uso molto. Il consiglio migliore che mi sento di darti è quello di inziare con programmini molto semplici, come far accendere e spegnere un LED. Magari cercarsi un tutorial su raspberry, tipo il libro di ElettronicaIn, e seguirlo dall'inizio alla fine senza saltare i vari passi.
walterword Inserita: 25 agosto 2017 Segnala Inserita: 25 agosto 2017 Livio ...python tu non lo usi proprio ahahahahah Geco ....python si basa sulla indentazione del codice , non usa parentesi etc Devi usare il TAB della tua tastiera per dare la profondità che avresti con l'annidamento delle parentesi graffe del C
Livio Orsini Inserita: 25 agosto 2017 Segnala Inserita: 25 agosto 2017 Quote Livio ...python tu non lo usi proprio ahahahahah Walter perchè parli sempre di cose che non sai? Qualche prova con python ogni tanto la faccio, così per sfizio, però è un liguaggio che non mi piace, proprio per la sua filosofia.
walterword Inserita: 31 agosto 2017 Segnala Inserita: 31 agosto 2017 Livio , Python è potentissimo e ben fornito oltrechè gratuito e supportato da winzoz e tutte le distro di linux kernel. Da linguaggio di scripting sta diventando sempre più un linguaggio sostitutivo e supportato anche in automazione industriale. A me piace relativamente, un programmatore non può permettersi di dire se un linguaggio piace o no .Se in un ambiente lo devi usare lo usi e basta senza farla troppo lunga Poi diventerà anche piacevole . Personalmente piuttosto che imparare il basic preferisco imparare il python a parità di linguaggi interpretati Ci sono librerie per python , tipo numpy o altre che te le sogni in basic . Lo sai che ifach si sposa ....azz io sono ancora qua in iveco a torino e poi andrò a salerno , non riesco proprio andarci al matrimonio , un peccato ....
Livio Orsini Inserita: 1 settembre 2017 Segnala Inserita: 1 settembre 2017 Quote A me piace relativamente, un programmatore non può permettersi di dire se un linguaggio piace o no Questa è solo una tua personale opinione. Un programmatore può benissimo non gradire un linguaggio, un ambiente di sviluppo, una piattaforma, un sistema operativo. Ci mancherebbe altro! Tu stesso ti contraddici, dicendo che preferisci imparare python invece che basic. Non non sapevo del nuovo progetto amtrimonuale di Claudio; l'ultima volta che l'ho sentito era forse appena dopo Pasqua. Meglio Torino e Salerno che Theran. Almeno mangi decentemente. Sai che ci son momenti in cui ho nostalgia delle trasferte e della vita sugli impianti; però è solo un momento di idiozia, poi rinsavisco velocemente.
walterword Inserita: 21 settembre 2017 Segnala Inserita: 21 settembre 2017 se devi fare un lavoro sotto contratto non puoi permetterti di dire che un linguaggio ti piace o no. La mia preferenza è giustificata da molte cose in termini di imparare un nuovo linguaggio come python che è molto piu fornito e potente del basic che ha 50 anni Sono due cose differenti , non mi contraddico stai tranquillo
walterword Inserita: 21 settembre 2017 Segnala Inserita: 21 settembre 2017 ritornando al problema di geco , gli IF di controllo sono fuori dal while , devi guardare l'indentazione del codice che sostituisce le parentesi altri linguaggi Livio a parte gli scherzi , il python è potente ma faccio fatica anche io a digerirlo anche perche sto usando solo awl a tutta birra, ladder ,C/C++ su linux e C# sotto winzoz I linguaggi per apprezzarli li devi usare continuamente e spremerli quanto possibile Per fare il print di ciao mondo van bene tutti
Livio Orsini Inserita: 22 settembre 2017 Segnala Inserita: 22 settembre 2017 Walter, forse in giro per il mondo c'è ancora qualche macchina funzionante che ho fatto io e certo non per fare il print ciao mondo. Tu non puoi fare lo schizzinoso ma io, fortunatamente, posso fare ed usare solo quello che mi piace. Magari fra una ventina d'anni ti troverai nella medesima condizione. Ora basta con gli OT
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora