Du har tre opgaver:
- Ekskluder datofelterne fra listen
- Konfigurer Python til at køre SQL-kommandoer
- Opret kode for at indsætte dataene i databasen
Jeg er ikke 100 % sikker på, hvordan du håber at gemme de data, du har inkluderet i databasen, men jeg vil give mit bedste gæt.
items_to_insert = []
for dictionary in ls:
#pop removes the value from the dict
date_for_insert = dictionary.pop("datetime", None)
if date_for_insert is None:
raise ValueError('No datetime - aborting')
for key in dictionary:
items_to_insert.append([date_for_insert, key, dictionary[key]
Denne kode går til hver ordbog i ls-listen, fjerner datetime og parser derefter dataene i en matrix. Nu er du indstillet til at indsætte dataene
Til opgave 2 skal du bruge PyMySQL eller noget lignende, og konfigurere dine forbindelser og ting, og derefter til opgave 3 køre:
for item in items_to_insert:
cursor.execute("INSERT INTO mytable (Datetime,Item,Value) VALUES ('{}', '{}', '{}')".format(item[0], item[1], item[2]))
Eller noget i den stil. Denne linje er lettere på grund af dataforbehandlingen fra oven.
Du skal muligvis formatere dato og klokkeslæt på en bestemt måde, for at denne kode kan fungere korrekt.