Hello, first congratulations and it is important after this project that you start first studying a programming logic and then study the python language, will help you a lot to follow this career as a programmer.
Come to your question, first, you did not specify what would be the goal of the search (result of fetchall), will be a print of this result? , will turn into dictionary? , will turn into a variable that will separate the data?
Not knowing this I will give a general information on how to do, observe the code and try to understand how it works, if you have any more questions edit your post I will reply again.
Follows the code:
#Importo a biblioteca.
import sqlite3
#Faço a criação se não existente ou conecto ao banco de dados se existente.
db = sqlite3.connect('sqlite.sqlite3')
#Crio um cursor.
cursor = db.cursor()
#Crio uma tabela se não existente.
cursor.execute('CREATE TABLE IF NOT EXISTS Teste (nome TEXT, telefone TEXT, email TEXT)')
#Insiro os dados nessa tabela.
cursor.execute('INSERT INTO Teste VALUES ("Pedrinho", "58747475", "[email protected]")')
#Obtenho todos os valores onde o nome seja igual 'Pedrinho'.
info = cursor.execute('SELECT * FROM Teste WHERE nome="Pedrinho"').fetchall()
#Função seleciona o primeiro objeto da lista que retorna do fetchall()
#Em seguida seleciona cada elemento da tupla e carrega em uma variável
#O resultado disso: os dados separados por variável do tipo str (string) são retornados.
def separarPorVariavel(info):
nome = info[0][0]
telefone = info[0][1]
email = info[0][2]
return nome
#Função seleciona o primeiro objeto da lista que retorna do fetchall()
#Em seguida seleciona cada elemento da tupla e carrega em uma variável
#Em seguida cria e retorna um dicionario, que diferente da tupla é um objeto mutável.
def separarPorDicionario(info):
nome = info[0][0]
telefone = info[0][1]
email = info[0][2]
return {'nome': nome, 'telefone': telefone, 'email': email}
#Função cria uma lista vazia, em seguida percorre por cada elemento da primeira tupla resultado do fetchall()
#Em cada elemento percorrido é adicionada a lista criada anteriormente com o método append
#Em seguida retorna a lista dos objetos, a lista funciona igual a tupla mas é do tipo mutável.
def separarPorLista(info):
lista = []
for i in info[0]:
lista.append(i)
return lista
let’s also see the behavior of outputs:
input: print(separarPorVariavel(info))
output: Pedrinho
input: print(separarPorDicionario(info)['nome'])
output: Pedrinho
input: print(separarPorLista(info)[0])
output: Pedrinho