Com 2 while e alguns if, eu criei um editor de textos no Python

Você pode criar rapidamente um pequeno programa em Python que recebe e grava conteúdo em texto no disco.
O objetivo do programa é demonstrar o funcionamento de um loop while, com o uso de if, break e algumas funções de manipulação de arquivos.
Basicamente, o código “que faz as coisas” fica rodando indefinidamente dentro de um laço.
Fique à vontade para sugerir mudanças no código, bem como fazer uso dele da maneira que achar melhor.
Infelizmente, esta versão não permite recuperar e editar o texto gravado.
Tudo o que espero é que ele possa servir como exemplo de uso de laços while — que foram amplamente discutidos neste texto.


#!/usr/bin/python3
# meu primeiro editorzinho de textos

# variável que vai receber todo o conteúdo digitado
texto=""
# variável de nome do arquivo que vai receber o conteúdo
nomearquivo=""
# variável que indica a ação sobre o nomearquivo
gravarsn=""
print("Editor de textos simples do PythonBay.com - meueditor.py")
nomearquivo = input("Nome do arquivo: ")
print("(:q) sair do editor")
print("--------------")
texto=""
gravarsn=""
while True:
	linha = input(" > ")
	if linha == ":q":
        	break
	texto = texto + linha+"\n"

# ao sair do primeiro loop while, exibe
# o que foi digitado pelo usuário.

print("até agora, você escreveu estas coisas lindas comigo:")
print("--------------\n")
print(texto)
print("\n--------------")
print("Obrigado por me usar!")
while True:
	gravarsn=input("(w) substituir arquivo atual || (a) adicionar texto ao arquivo atual\n (q) sair sem gravar\n : ")
	if gravarsn == "q":
		print("Saindo sem gravar.")
		break
	if gravarsn == "w":
		# abre o arquivo e o sobrescreve com o novo conteúdo.
		f = open(nomearquivo,"w")
		f.write(texto)
		f.close()
		print("O texto anterior foi substituído pelo novo.")
		break
	if gravarsn == "a":
		# abre o arquivo e adiciona o conteúdo novo ao final.
                f = open(nomearquivo,"a")
                f.write(texto)
                f.close()
                print("O texto atual foi acrescentado ao arquivo anterior.")
                break

como é possível ver, na primeira linha do programa, ele foi feito para rodar pelo Python 3.


python3 meueditor.py

Se você usa o Linux, pode dar ao script permissão de execução e rodar ele em seguida. Veja como:


chmod +x meueditor.py
./meueditor


Fácil, não é?!
Se boa parte das tarefas secundárias executadas for direcionada a funções, ainda seria possível enxugar mais este código e ainda adicionar funcionalidades… mas isso fica para outro post.

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Assinar blog por e-mail

Digite seu endereço de e-mail para assinar este blog e receber notificações de novas publicações por e-mail.

Junte-se a 49 outros assinantes

Deixe uma resposta