Hello, I am new to python, I'm programming in 3.5.1, I was doing a piece of code that reads and then draws a line from a file:
lista = {}
# Essa função lê o arquivo e divide ele em linhas, em palavras e depois coloca dentro de um dicionario
# e a primeira palavra de uma linha é a chave das outras palavras da linha
def upd():
file = open("bd.glc","rt")
text = list(map(lambda l: l.split(" "),file.readlines()))
file.close()
p = 0
while p < len(text):
text[p][-1] = text[p][-1].replace("\n","")
p += 1
p = 0
while p < len(text):
lista.update({text[p][0]:text[p][1:-1]})
p += 1
upd()
# Pergunta qual cliente deve ser deletado
resd = input("\nQual o id do cliente\n>>>")
if resd in lista:
file = open("bd.glc","wt")
# Aqui é dificil de explicar mas basicamente escreve no arquivo todas as linhas menos a linhas
# com a chave que vai ser deletada
for k,v in lista.items():
if k == resd:
continue
else:
file.write(k)
for i in v:
file.write(" " + i)
file.write("\n")
And he is deleting the entire file rather than delete the file and put all the lines less to be cleared. (The program should do it because I do not know how to delete a text directly in the file)