Advertisement
Guest User

Untitled

a guest
Mar 28th, 2017
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. import psycopg2
  2.  
  3. class Pessoa:
  4. """Classe de criação do objeto Pessoa"""
  5.  
  6. def __init__(self, nome, idade, sexo):
  7. """Inicializador dos atributos de instancia"""
  8. nome = nome
  9. idade = idade
  10. sexo = sexo
  11.  
  12. @property
  13. def nome(self):
  14. """Retorna o nome do objeto"""
  15. return self.__nome
  16.  
  17. @nome.setter
  18. def nome(self, nome):
  19. """Insere um nome ao objeto"""
  20. self.__nome = nome
  21.  
  22. @property
  23. def idade(self):
  24. """Retorna a idade do objeto"""
  25. return self.__idade
  26.  
  27. @idade.setter
  28. def idade(self, idade):
  29. """Insere a idade do objeto"""
  30. self.__idade = idade
  31.  
  32. @property
  33. def sexo(self):
  34. """Retorna o sexo do objeto"""
  35. return self.__sexo
  36.  
  37. @sexo.setter
  38. def sexo(self, sexo):
  39. """Insere o sexo do objeto"""
  40. x = "Masculino" if sexo.lower() == "m" else "Feminino" if sexo.lower() == "f" else "Sexo Invalido"
  41. self.__sexo = x
  42.  
  43.  
  44. try:
  45. conn = psycopg2.connect("dbname='mydb' user='mdslino' host='localhost' password='marcelo'")
  46. except:
  47. print("Não consigo conectar com o banco de dados.")
  48.  
  49. c = conn.cursor()
  50.  
  51. def checar_banco():
  52. try:
  53. c.execute('SELECT * FROM pessoa;')
  54. except:
  55. c.execute('CREATE TABLE pessoa (id int, nome text, idade int, sexo text);')
  56.  
  57. def criar_pessoas():
  58. n = int(input("Quantas pessoas deseja adcionar? "))
  59. lista_pessoa = []
  60. for i in range(n):
  61. nome = input("Nome: ")
  62. idade = int(input("Idade: "))
  63. sexo = input('''Sexo: "Digite M ou N "''')
  64. p = Pessoa(nome, idade, sexo)
  65. lista_pessoa.append(p)
  66. return lista_pessoa
  67.  
  68. def inserir_banco(lista_pessoa):
  69. for i in range(lista_pessoa):
  70. query = "INSERT INTO pessoa (nome, idade, sexo ) VALUES (%s, %d, %s);"
  71. data = (i.nome, i.idade, i.sexo)
  72. c.execute(query, data)
  73. c.commit()
  74.  
  75. def buscar_banco(nome):
  76. query = "SELECT nome FROM pessoa;"
  77. c.execute(query)
  78. results = c.fetchall()
  79. for i in results:
  80. print(i)
  81.  
  82. def main():
  83. pessoas = criar_pessoas()
  84. checar_banco()
  85. inserir_banco(pessoas)
  86. busca = input("Nome para buscar: ")
  87. buscar_banco(busca)
  88.  
  89. if __name__ == "__main__":
  90. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement