Daniele aka Palmux
Profilo di
Nome | Daniele aka Palmux |
---|---|
Indirizzo email | ask@me |
Avatar | ![]() |
Messaggi | 1265 |
-
- 2022-04-25 12:18:32
- Re: Quesito: come ritornare a passi precedenti di programma inserendo nuovi valori
- Forum >> Programmazione Python >> Scripting
- Ciao caro, primo esercizio... sistema il codice.
Visto che la sintassi è parte del linguaggio, per capire eventuali errori metti tutto nella forma corretta usando l'apposito tasto code che trovi vicino alla tavolozza dei colori. Se non ti trovi, posta il codice con strumenti come Pastebin o similari.
Poi si ragiona sul resto.
Cya
-
- 2022-04-16 12:24:11
- Re: Esercizi Python
- Forum >> Programmazione Python >> Files e Directory
-
Ciao a te e benvenuto in questo magico mondo.
Qui su questa risorsa tendiamo ad aiutare in maniera diversa, non risolvendo i quesiti per conto tuo, ma aiutandoti dove ti blocchi. Per questo sarebbe meglio che tu iniziassi con un esercizio alla volta, scrivendo del codice e poi eventualmente chiedendo aiuto all'insorgere di determinate difficoltà, a quel punto saremo ben lieti di aiutarti.
Forza e coraggio, anche i grandi viaggi cominciano con un piccolo passo.
Cya
P.S. Ho spostato il tuo messaggio nella sezione Principianti.
-
- 2022-04-01 17:22:47
- Re: Nome pc in una lan
- Forum >> Principianti
- fatopeo said @ 2022-04-01 09:46:41:Riguardo socket.herror dove hai trovato i codici di errore ed il loro significato?Ho trovato tutto nella documentazione ufficiale.
Cya
-
- 2022-03-18 20:09:50
- Re: Python - mySQL - MAMP
- Forum >> Principianti
- KureChan said @ 2022-03-18 18:11:49:mysql.connector.errors.InterfaceError: 2003: Can't connect to MySQL server on 'localhost:3306' (61 Connection refused)
c'è qualche problema di porta?Ciao caro, purtroppo non conosco il pacchetto che utilizzi, non so se esistano degli impedimenti per la connessione al DB. Vedo da quello che posti che non hai specificato il database, come specificato in questa pagina, che fa riferimento alla versione PRO a dire il vero.
Prova a seguire la documentazione e magari fatti una ricerca su Stackoverflow, non si sa mai.
In bocca al lupo e tienici aggiornati sui tuoi successi.
Cya
-
- 2022-03-16 23:24:21
- Re: Nome pc in una lan
- Forum >> Principianti
- Non sbagli nulla, ma semplicemente non lo otterrai perché non esiste nessun riferimento/mappa DNS che dia informazioni alla scansione, guardati qui il motivo.
import socket def host_lkp(addr): return socket.gethostbyaddr(addr)[0] ip_list = ['192.168.0.114', '192.168.0.118', '192.168.0.1', '192.168.0.136', '8.8.8.8'] for ip in ip_list: try: machine = host_lkp(ip) print(f'Successo all'indirizzo {ip} si trova {machine}') except socket.herror as e: if e.errno == 1: print(f'IP {ip} non ha record DNS') elif e.errno == 2: print('DNS server al momento risulta non disponibile') else: print('Error sconosciuto')
Il risultato dell'output sarà, con ogni probabilità:IP 192.168.0.114 non ha record DNS IP 192.168.0.118 non ha record DNS IP 192.168.0.1 non ha record DNS IP 192.168.0.136 non ha record DNS Successo all'indirizzo 8.8.8.8 si trova dns.google
Se andiamo avanti con l'esempio con un server noto:>>> socket.gethostbyname('google.it') '142.250.180.131' >>> socket.gethostbyaddr('142.250.180.131')[0] 'mil04s43-in-f3.1e100.net'
Ora se nel /etc/hosts aggiungessi (esempio per macchina GNU/Llinux, su Windows ignoro il procedimento):
[...] 192.168.0.114 pc2
A questo punto otterresti qualcosa di diverso nella scansione:Successo all'indirizzo 192.168.0.114 si trova pc2 IP 192.168.0.118 non ha record DNS IP 192.168.0.1 non ha record DNS IP 192.168.0.136 non ha record DNS Successo all'indirizzo 8.8.8.8 si trova dns.google
Fammi sapere se ti è tutto chiaro.
Cya
-
- 2022-02-27 14:59:15
- Re: Esercizio python sequenza
- Forum >> Principianti
- Ciao caro e benvenuto.
BioLog21 said @ 2022-02-27 10:16:01:Data una sequenza di numeri scrivere un programma che stampi in imput i numeri compresi nell' intervallo 0;10
Mhhhh, ma che vuol dire concretamente? Se qui sotto sbaglio l'interpretazione e non è quello che cerchi, fammi un esempio di quello che hai in ingresso e quello che ti aspetti debba succedere.
BioLog21 said @ 2022-02-27 10:16:01:N=int(input("inserisci un numero della sequenza"
Contatore=0
While n<=10
Contatore=contatore+1
Else
Attento, l'indentazione in Python è parte del linguaggio e non può essere omessa. Usa il tasto code che trovi prima della tavolozza di colori durante la scrittura del messaggio.
Dunque alcuni consigli:
A. In questo caso potresti usare un ciclo for in accoppiata a range();
B. Attenzione alla sintassi, è while non While, è else, non Else;
C. Si tratta di input e non imput.
Andiamo a vedere quello che hai scritto (aggiustato solo un po' per gli errori di sintassi):n = int(input("Inserisci un numero della sequenza:" )) contatore = 0 while n <= 10: contatore += 1 else: print("Tutto finito")
A. Nella prima riga chiedi all'utente di inserire un numero;
B. Nella seconda indichi che il contatore deve essere 0;
C: Alla terza riga inizi col ciclo e gli stai dicendo... finché n è inferiore o uguale a 10, fai cose e vedi gente;
D. Poi incrementi il contatore (che però non controlli mai);
E. L'else è trascurabile, viene eseguito al termine.
Ora se ho capito vagamente quello che vorresti, potresti usare una cosa del genere:for i in range(10): n = int(input("Inserisci un numero: ")) print("Hai inserito ", n) else: print("Siamo arrivati in fondo, tanti saluti")
Questo semplice script continua a chiederti numeri e stampare la tua scelta, finché non arriva a 10 e quindi saluta e finisce.
Se vuoi usare il while e il tuo contatore, non cambia molto:contatore = 0 while contatore != 10: n = int(input("Inserisci un numero: ")) print("Hai inserito ", n) else: print("Siamo arrivati in fondo, tanti saluti")
BioLog21 said @ 2022-02-27 10:16:01:Perdonatemi se è un esercizio semplice ma io studio biologia e di programmazione non me ne intendo molto, non riesco a trovare una tipologia simile su internet e non so se sia giusto
In bocca al lupo per i tuoi studi, consiglio personale è meglio che provi a capire semplicissimi script come questo anziché cercare la soluzione in rete, quello che apprendi resterà per sempre.
Considera che potresti abbellire e di molto il tuo script, magari mettendo un controllo per interpretare il tipo di oggetto inserito, mettere un messaggio che informa l'utente di quanti numeri ha inserito e quanti ne può ancora inserire e cosine del genere.
Fammi sapere se ti sono stato utile e se ho capito quello che chiedevi.
Cya
P.S. Ma che è successo coi messaggi, perché ne hai inseriti millemila? Attento in futuro, grazie.
-
- 2022-02-17 14:04:33
- Re: Differenza fra iterable e iterator e uso specifico...
- Forum >> Principianti
- Uh, guarda è un argomento molto vasto e che abbraccia vari aspetti. Su un forum è difficile affrontare con la dovuta profondità un argomento del genere, ma esiste una vastissima letteratura online sull'argomento che spiega per filo e per segno quello che chiedi, introducendo anche altri aspetti.
A margine ricorda sempre che puoi "misurare" il peso degli oggetti e dare riscontro a quanto appreso:
>>> import sys >>> l = [i for i in range(100000)] >>> g = (i for i in range(100000)) >>> sys.getsizeof(l, "bytes") 87616 >>> sys.getsizeof(g, "bytes") 112
Ci sono, ti dicevo, delle interessanti letture [1] e [2] che spiegano la magia e con Google ne troverai altre mille, se l'argomento ti stuzzica non hai che da approfondire.
Cya
-
- 2022-02-12 16:16:07
- Re: Installazione su macOS Sierra Versione 10.12.6
- Forum >> Principianti
- Mi spiace, non ho nessuna esperienza negli ambienti con la mela.
Ti posso solo suggerire di chiedere aiuto, eventualmente, su uno degli altri canali della nostra comunità, potresti essere più fortunato.
Cya
-
- 2022-02-12 16:13:21
- Re: Esercizio su Cicli While e For
- Forum >> Principianti
- kant80 said @ 2022-02-12 16:07:49:Il risultato è quello che desideravo, grazie mille (conoscevo la funzione sum() e mi ero scordato l'esistenza di len()); vorrei chiederti solo un'ultima cosa, hai accennato al fatto che tu lo avresti scritto in modo più sintetico, come?Ciao caro, ascolta un fesso e fidati di me, ora non vuoi saperlo.
Ti dico solo che si tratta in sostanza di usare costrutti che accorpano in una sola riga le varie istruzioni. Meglio che non precorriamo i tempi, devi prima arrivarci a studiare cose come le list comprehensions e funzioni anonime (lambda) ad esempio.
Nessun disturbo, questa risorsa è qui per questo.kant80 said @ 2022-02-12 16:07:49:Grazie mille di tutto, scusa il disturbo e soprattutto buon fine settimana.
Cya e buono studio.
-
- 2022-02-12 00:59:32
- Re: Esercizio su Cicli While e For
- Forum >> Principianti
- kant80 said @ 2022-02-11 21:24:39:intanto ti ringrazio per la risposta e perdonami per il casino che ho combinato, ecco il codice "sistemato" (sperando nel modo giusto):Figurati, è un piacere.
Allora ci sono varie cose da sistemare (analizzo solo il tuo codice non come lo scriverei io):
A. mylist = [] ti viene azzerata ad ogni passaggio, mettila prima del while.
B. Accorpa un po', puoi ridurre i passaggi. Ad esempio:mylist = [] while True: val = input("Inserisci un numero: ") try: int(val) mylist.append(int(val)) except ValueError: try: float(val) mylist.append(float(val)) except ValueError: print("Non hai inserito un numero valido")
C. Come hai visto non usare try... except in quel modo, ma in questo caso con un ValueError;
D. Sto all'incirca seguendo il tuo script, ma non l'avrei fatto così prolisso, ci sono modi per semplificarlo (non voglio spaventarti);
E. Per vedere il numero di record presenti nella tua lista, una len(mylist);
F. Cosa hai contro sum() per sommare i valori della lista?
Puoi mettere a posto il tuo script ora.
Cya
P.S. Non caricare file sul server, nel 2022 non serve farlo, esistono sistemi come quello che ti ho citato prima (Pastebin), che sono molto più comodi.