Skip to content

Instantly share code, notes, and snippets.

@Mdslino
Created March 29, 2017 03:13
Show Gist options
  • Save Mdslino/159841121bd259b5292f1cf6047dc479 to your computer and use it in GitHub Desktop.
Save Mdslino/159841121bd259b5292f1cf6047dc479 to your computer and use it in GitHub Desktop.
import psycopg2
class Pessoa:
"""Classe de criação do objeto Pessoa"""
def __init__(self, nome, idade, sexo):
"""Inicializador dos atributos de instancia"""
nome = nome
idade = idade
sexo = sexo
@property
def nome(self):
"""Retorna o nome do objeto"""
return self.__nome
@nome.setter
def nome(self, nome):
"""Insere um nome ao objeto"""
self.__nome = nome
@property
def idade(self):
"""Retorna a idade do objeto"""
return self.__idade
@idade.setter
def idade(self, idade):
"""Insere a idade do objeto"""
self.__idade = idade
@property
def sexo(self):
"""Retorna o sexo do objeto"""
return self.__sexo
@sexo.setter
def sexo(self, sexo):
"""Insere o sexo do objeto"""
x = "Masculino" if sexo.lower() == "m" else "Feminino" if sexo.lower() == "f" else "Sexo Invalido"
self.__sexo = x
try:
conn = psycopg2.connect("dbname='mydb' user='mdslino' host='localhost' password='marcelo'")
except:
print("Não consigo conectar com o banco de dados.")
c = conn.cursor()
def checar_banco():
try:
c.execute('SELECT * FROM pessoa;')
except:
c.execute('CREATE TABLE pessoa (id int, nome text, idade int, sexo text);')
def criar_pessoas():
n = int(input("Quantas pessoas deseja adcionar? "))
lista_pessoa = []
for i in range(n):
nome = input("Nome: ")
idade = int(input("Idade: "))
sexo = input('''Sexo: "Digite M ou N "''')
p = Pessoa(nome, idade, sexo)
lista_pessoa.append(p)
return lista_pessoa
def inserir_banco(lista_pessoa):
for i in range(lista_pessoa):
query = "INSERT INTO pessoa (nome, idade, sexo ) VALUES (%s, %d, %s);"
data = (i.nome, i.idade, i.sexo)
c.execute(query, data)
c.commit()
def buscar_banco(nome):
query = "SELECT nome FROM pessoa;"
c.execute(query)
results = c.fetchall()
for i in results:
print(i)
def main():
pessoas = criar_pessoas()
checar_banco()
inserir_banco(pessoas)
busca = input("Nome para buscar: ")
buscar_banco(busca)
if __name__ == "__main__":
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment