Agenda PasPy
Publicado por Alexandre 02/06/2005
[ Hits: 6.279 ]
Agenda que utiliza arquivos txt como 'bd.'
#!/usr/bin/env python
''' '' '' '' '' ''' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ''
''' Licenca:GPL ''' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ''
''' '' '' '' '' ''' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ''
# ----------- ----- ----- ---- --- -- - by psybox|
# Autor: psybox |
# Contato: psy.box@phreaker.net |
# -------------------------------------------------------------------
import os
import time
# Pasta para os dados
mDir = os.system("ls dados")
if( mDir <> "" ):
os.system("mkdir dados")
Dir_dados = './dados/'
Arq1 = ''
#____CADASTRAR____#
# Defino a funcao 'cadastrar()'
# com a tarefa de coletar
# informacoes basicas para
# o cadastramento via arquivo
# texto de um contato na
# agenda, sendo as seguintes
# informacoes necessarias:
# - Nome STRING -> Arquivo
# - Sobrenome STRING
# - Endereco STRING
# - Telefone STRING
def cadastrar():
Pessoal = {'Nome':'','Sobrenome':'','Endereco':'','Tel':''}
print('\n ------------- ----- ----- ---- ---- --- -- - by psybox')
print('\n')
Pessoal['Nome'] = raw_input('\nNome: ')
Pessoal['Sobrenome'] = raw_input('\nSobrenome: ')
Pessoal['Endereco'] = raw_input('\nEndereco: ')
Pessoal['Tel'] = raw_input('\nTelefone: ')
x = len(Pessoal['Nome'])
if (x == 0) or (Pessoal['Nome'] == '\b'):
print("\n Digite um nome valido!")
cadastrar()
nome = Pessoal['Nome']
Arq1 = open(Dir_dados+nome, 'a')
Pessoal['Nome'] = Pessoal['Nome']+'\n'
Pessoal['Sobrenome'] = Pessoal['Sobrenome']+'\n'
Pessoal['Endereco'] = Pessoal['Endereco']+'\n'
Pessoal['Tel'] = Pessoal['Tel']+'\n'
Arq1.write(Pessoal['Nome'])
Arq1.write(Pessoal['Sobrenome'])
Arq1.write(Pessoal['Endereco'])
Arq1.write(Pessoal['Tel'])
Arq1.close()
print('\n** Contato adicionado!')
time.sleep(1.5)
Menu()
#____CONSULTAR____#
# Defino a funcao 'consultar()'
# com a tarefa de leitura
# e exibicao de informacoes
# registradas em um arquivo
# texto, onde sera necessaria
# a seguinte informacao para sucesso:
# - Nome STRING -> Arquivo
def consultar():
linha = ''
nome = ''
print('\n ------------- ----- ----- ---- ---- --- -- - by psybox')
print('\n')
nome = raw_input('Nome do contato: ')
try:
Arq1 = open(Dir_dados+nome,'r')
except:
print("\n** Contato nao cadastrado!")
time.sleep(3)
consultar()
try:
linha = Arq1.readline()
print('\nNome: '+linha)
linha = Arq1.readline()
print('Sobrenome: '+linha)
linha = Arq1.readline()
print('Endereco: '+linha)
linha = Arq1.readline()
print('Telefone: '+linha)
except:
print('\n** Erro ao ler arquivo!')
exit
Arq1.close()
nome = raw_input('\n** Para continuar pressione [ENTER]...')
Menu()
#____LISTAR____#
def listar():
lista = ''
os.system('ls '+Dir_dados+' > /tmp/lista')
Arq1 = open('/tmp/lista','r')
lista = Arq1.read()
print('\n ------------- ----- ----- ---- ---- --- -- - by psybox')
print('\n')
print(lista)
Arq1.close()
nome = raw_input('\n** Para continuar pressione [ENTER]...')
Menu()
#____DELETAR____#
# Defino a funcao 'deletar()'
# com a tarefa de remover
# arquivos de contatos
# cadastrados previamente
# atraves da funcao 'cadastrar()'
# ou ate mesmo arquivos texto
# que se encontrem no diretorio de
# dados determinado.
def deletar():
nome = ''
print('\n ------------- ----- ----- ---- ---- --- -- - by psybox')
print('\n')
nome = raw_input("Qual contato voce deseja deletar ?: ")
try:
os.remove(Dir_dados+nome)
except:
print("\n** Erro ao deletar contato! Nao existente!")
deletar()
print('\n** Contato apagado!')
time.sleep(1.5)
Menu()
#____MENU____#
def Menu():
os.system('clear')
menu = ''
print('\n ------------- ----- ----- ---- ---- --- -- - by psybox')
print('\n')
print('\n*o* Agenda PASPY beta *o*')
print('\n')
print('* (C)adastrar contato')
print('* (Co)onsultar contato')
print('* (L)istar contatos')
print('* (D)eletar contato')
menu = raw_input('* (S)air: ').lower()
if (menu == 'c'):
cadastrar()
elif (menu == 'co'):
consultar()
elif (menu == 'l'):
listar()
elif (menu == 'd'):
deletar()
elif (menu == 's'):
os.system('clear')
exit
else:
print('\n** Digite algo valido!')
time.sleep(1.5)
Menu()
os.system('clear')
Menu()
Descobrir HOME do usuario e criar arquivo de configuração
Juntando tabelas em aquivo texto
Checagem e remoção de arquivos
hicon - Criador de ícones desktop e aplicações do Gnome
Nenhum comentário foi encontrado.
Boas Práticas e Padrões Idiomáticos em Go e C
Vale a pena ter mais de uma interface grafica no seu Linux?
Estrutura e Funcionamento de um Ebuild no Gentoo Linux
Copiar Para e Mover Para no menu de contexto do Nautilus e Dolphin
Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
Usando o ble.sh (Bash Line Editor) no lugar do bash completion
Montagem pré automática de HD externo usb em NTFS não funciona no Debian Trixie - Solução
O que você está ouvindo agora? [2] (240)
Senhor Einstein tinha razão mesmo! (0)
Instalação Dual Boot Linux+Windows 11 (2)
No Ubuntu 26.04, sudo passou a mostrar os asteriscos ao digitar por pa... (2)









