Hejsan, jag har försökt att hitta en lösning på mitt problem i 3 dagar nu. Jag har försökt att få hjälp på IRC men ingen svarar, kanske är det jag som förklarar dåligt men konstigt nog är det ingen som har påpekat det heller. Så jag prövar min lycka här istället.
Jag försöker att läsa in en tabell med värden och dess namn (värdenamn eller description) in i mitt python skript. Jag vet hur jag läser in en tabell och returnerar det som en lista, men problemet är att jag skulle vilja få en dictionary som består av värdenamn och värden (keys och values), då värdnamnet (key) är index.
Så här ser min kod för att få en lista av värden från en tabell:
Kod:
def GetPlayer(playerId):
connection = sqlite3.connect(filePath)
connection.row_factory = sqlite3.Row
cursor = connection.cursor()
data = cursor.execute("select * from myTable where playerId=?", playerId).fetchone()
connection.close()
return data
Som ni ser, så är det ganska svårt att plocka ut data ifrån denna lista, t.ex om jag vill ha namnet på denna spelare. Då måste jag veta vart i listan namnet ligger med hjälp av hur tabellen är strukturerad. Om jag nu skulle använda mig av en dictionary istället för en lista så skulle jag hur enkelt som helst att gör så här:
Kod:
player = GetPlayer(123)
print "Playername=%s" % player["name"]
Jag kan ju tillägga att jag vet hur man får ut värdenamnet/keyn/variabelnamnet, men jag hittar ingen smidig lösning på hur jag ska kombinera läsningen av värden och värdenamnen. Jag tycker det ser rörigt och att det borde finnas en bättre lösning på problemet. Denna metod hämtar namnet: "varName = cursor.description"
Jag hoppas denna information räcker och jag är otroligt tacksam för all hjälp jag kan få!