Forum >> Programmazione Python >> Database >> Connessione DATABASE

Pagina: 1

Salve a tutti, dovrei creare un database. Ho creato la GUI con PyQt4 con i diversi campi da compilare, ho scritto anche il programma con python con le diverse funzioni, ma adesso non so come collegare il database (PgAdmin o Mysql) per salvare le informazioni che inserisco nell'interfaccia GUI.

Qualcuno saprebbe aiutarmi o consigliarmi qualche manuale dove poter guardare? :(



Grazie in anticipo
Ciao caro e benvenuto fra noi.

La tua domanda è formulata in maniera curiosa perché se ho capito bene il tuo fine, non il tuo mezzo. Vuoi inserire i dati in un database, ma non hai ancora scelto quale usare? Citi Pgadmin e MySQL, ma se il secondo è sì un database, il primo no visto che è uno strumento per la gestione di PostgreSQL.

Comunque sia per fare le tue prime prove potresti partire da qualcosa di più semplice come SQLite che è perfettamente integrato in Python e ti permette di creare con facilità una base dati funzionante. Non hai specificato quale versione di Python usi, ma comunque parti da qui e poi spazia dove ritieni opportuno.

Tienici informato sui tuoi successi.

Ciao.
Daniele
Ciao Daniele, mi sono accorto adesso della tua risposta, grazie mille! Adesso gli do un'occhiata.

Vorrei chiederti un' altra cosa... ho creato un ciclo while per appendere ad una lista vuota dei valori.

Questo è il codice:




QUOTE = []

valoreAssoluto = 961.34




while fine != 0.0:

quote = float(input("Inserisci la quota: "))

QUOTE.append(quote)




Però vorrei che, dopo aver finito di inserire i miei valori, mi facesse la somma di ogni singolo valore della lista con il valore della variabile valoreAssoluto. Come posso fare?



Ciao caro, ti basterebbe aggiungere un ciclo for alla fine del tuo codice che moltiplica ogni singolo valore per il valore assoluto. Perché ho usato il condizionale? Semplicemente perché il tuo codice contiene alcuni errori che ne minano il funzionamento:
1. fine non è valorizzato prima di iniziare il ciclo while e quindi ti restituisce errore (error);
2. fine non viene mai valorizzato nel tuo ciclo, che quindi non finisce di fatto mai non potendo mai essere 0 (error);
3. evita di usare nomi uguali anche se con maiuscolo e minuscolo. Certo non è un errore, ma un consiglio da amico (notice)
4. vedendo che usi input starai usando Python 2.7.x. Quindi mettici qualche try/except in caso l'utente non ti inserisca nulla o una stringa (warning)
5. Avendo già valore_assoluto come float il resto che fai è inutile. Tanto che succede se sommiamo un intero ad un float, il risultato sarà un ____?

Rivediamone una forma migliore, anche se di certo non molto pythonica:
#Valorizziamo quote, fine e valore_assoluto
quote = []
fine = (qualunque cosa che non sia 0, esempio:9999)
valore_assoluto = 961.34

# Ciclo while
while fine != 0:
    try:
         fine = input("Inserisci la quota: ")
         if fine != 0.0:
             quote.append(fine)
    except NameError: #Senza il punto interrogativo ovviamente
         print "Attenzione a cosa inserisci"
    except SyntaxError:
        print "Ma non hai inserito nulla"

# Un volta finito stampo i valori inseriti moltiplicati per il valore_assoluto, ma al posto del print puoi fare quello che vuoi, 
# magari usando una list comprehension in questo modo [i+valore_assoluto for i in quote]
# Ma eccoti il semplice for:
for i in quote:
    print i+valore_assoluto



Ciao e fammi sapere se qualcosa non ti è chiaro
Daniele


--- Ultima modifica di Daniele aka Palmux in data 2015-06-09 19:06:32 ---
Sì, è proprio quello che volevo fare :ok:.
Mi è stato chiarissimo.

Grazie ancora Daniele.
Ciao Daniele, vorrei chiederti un altro consiglio...
Adesso sto cercando di rendere il mio codice un eseguibile con py2exe.
Per creare anche una GUI posso farlo con QtDesigner?
Per creare anche una GUI posso farlo con QtDesigner?
Certo che puoi usarlo.

QtDesigner è un tool che ti permette di realizzare delle GUI usando le Qt. Non l'ho mai provato, uso altre librerie grafiche, quindi non so darti un giudizio di merito.

Ciao
Daniele


Pagina: 1



Esegui il login per scrivere una risposta.