Ola pessoal, não sou um usuario avancado no python, no momento estou desenvolvendo um programa de cadastro de funcionarios para um trabalho de faculdade, porem estou com problemas pois consegui criar a funcao e o dicionario que "armazena" as informacoes, mas preciso criar um Arquivo para armazena-lo e consultar suas informacoes depois. No entanto a opcao - writelines e outras - não aceita(m) listas ou dicionarios como parametro, logo, peco vossa ajuda. Aqui esta o que consegui desenvolver:
funcionarios = []
def cadastrarfuncionario():
lista_cpf = []
contador = 0
while contador < 1:
funcionario = {}
funcionario['nome'] = input('Insira o nome do funcionario: ').title()
funcionario['cpf'] = input('Insira o CPF do funcionario: ')
if funcionario['cpf'] in lista_cpf:
print('Este CPF já esta cadastrado!')
else:
cpf_conv = list(funcionario['cpf'])
basecpf = (((int(cpf_conv[0])*10)+(int(cpf_conv[1])*9)+(int(cpf_conv[2])*8)+(int(cpf_conv[3])*7)+(int(cpf_conv[4])*6)+(int(cpf_conv[5])*5)+(int(cpf_conv[6])*4)+(int(cpf_conv[7])*3)+(int(cpf_conv[8])*2))*10)%11
basecpf2 = (((int(cpf_conv[0]) * 11) + (int(cpf_conv[1]) * 10) + (int(cpf_conv[2]) * 9) + (int(cpf_conv[3]) * 8) + (int(cpf_conv[4]) * 7)+(int(cpf_conv[5])*6)+(int(cpf_conv[6])*5)+(int(cpf_conv[7])*4)+(int(cpf_conv[8])*3)+(int(cpf_conv[9])*2))*10)%11
if (basecpf != int(cpf_conv[9]) and basecpf != 10) or (basecpf2 != int(cpf_conv[10]) and basecpf2 != 10):
print('CPF Invalido!')
else:
lista_cpf.append(funcionario['cpf'])
funcionario['sexo'] = int(input('Insira o sexo do funcionario,0 para masculino ou 1 para feminino: '))
funcionario['d_nascimento'] = int(input('Insira o dia de nascimento do funcionario: '))
funcionario['m_nascimento'] = int(input('Insira o mes de nascimento do funcionario: '))
funcionario['a_nascimento'] = int(input('Insira o ano de nascimento do funcionario: '))
funcionario['cargo'] = int(input('Insira o cargo do funcionario,0 - Pedreiro, 1 - Engenheiro, 2 - Tecnico Adm.: '))
funcionario['salario'] = float(input('Insira o salario do funcionario: '))
funcionario['d_contratacao'] = input('Insira o dia de contratacao do funcionario: ')
funcionario['m_contratacao'] = input('Insira o mes de contratacao do funcionario: ')
funcionario['a_contratacao'] = input('Insira o ano de contratacao do funcionario: ')
funcionarios.append(funcionario)
saida1 = input('Deseja cadastrar outro funcionario? S/N? ').upper()
if saida1 == 'N':
contador = 1
arq = open('cadastros.txt', 'a') #PROBLEMA---------#PROBLEMA
arq.writelines(funcionarios) #PROBLEMA-------#PROBLEMA
texto = arq.readlines() #PROBLEMA----#PROBLEMA
for linha in texto:
print(texto)
arq.close()
Pergunta
Tomaz Pontes
Ola pessoal, não sou um usuario avancado no python, no momento estou desenvolvendo um programa de cadastro de funcionarios para um trabalho de faculdade, porem estou com problemas pois consegui criar a funcao e o dicionario que "armazena" as informacoes, mas preciso criar um Arquivo para armazena-lo e consultar suas informacoes depois. No entanto a opcao - writelines e outras - não aceita(m) listas ou dicionarios como parametro, logo, peco vossa ajuda. Aqui esta o que consegui desenvolver:
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.