image

Acesse bootcamps ilimitados e +650 cursos pra sempre

75
%OFF

PT

Paulo Tarso08/12/2025 21:33
Compartilhe

(Python) Conversor de letras maiúsculas/minúsculas + Limpeza de caracteres

    Olá, pessoal!

    Sou um estudante de programação e uma pessoa extremamnente tímida que não gosta de postar muita coisa, porém trabalho na área de atendimento e frequentemente tenho de transformar um nome grande em letras maiúsculas ou minúsculas devido a algum requisito do sistema, o que gera em um atraso e consumo de tempo desnecessário. Como solução paleativa criei uma aplicação pequena (e bem, rudimentar) em python para auxiliar o processo.

    A aplicação também retira caracteres especiais e tem uma função para limpar a tela.

    Apesar de ser bem simplória, ela pode ajudar alguém que esteja começando a aprender Python e deseja um exemplo de aplicação para verificar como o procedimento pode ser executado (Inclusive observar alguma função que não conhecia para utilizar em sua própria aplicação pessoal) (muito provavelmente tem maneira mais simples de fazer esse processo, porém pensem nisso como uma versão '1.0'.

    Fiz ela com a documentação de cada passo em inglês, porém adicionei uma descrição em português para ajudar .

    Quem quiser copiar do Github, segue a página do código, porém está em inglês.

    https://github.com/Cacotaku/ChangeLetters/blob/main/ChangeLetters.py

    Caso alguém queira contribuir com algo ou até mesmo só adicionar um contato no Github, sinta-se à vontade, será muito bem vindo :D

    Bye!

    import os
    
    
    
    from string import printable, punctuation
    
    
    #Função para apagar tela
    #function to clean screen
    def _apagarTela():
      os.system('cls' if os.name == 'nt' else 'clear')
      pass
    
    
    #Variável para verificar se você deseja continuar a usar o programa (0 - Não)
    #Variable verifying if you want to continue (0 - No)
    optionUseProgram = -1
    
    
    
    while(optionUseProgram != 0):
    
    
    
      #Limpar tela
      #clean screen
      _apagarTela()
    
      #index
      I = 0
    
      #Variável verificando se você deseja transformar as letras em maiúsculas(1) ou minúsculas(2)
      #Variable verifying if you want to transform letters to uppercase or lowercase (1 - uppercase | 2 - lowercase)
      optionChangeLetters = 0
         
      #Inserindo nome a ser corrigido   
      #Inserting name to fix
      name = input("Digite o nome:\n").strip()
    
    
      #Verificando qual opção para transformar letras
      #verifying which option to change letters
      optionChangeLetters = int(input("Deseja transformar o texto em: \n1 - Letras Maiúsculas \n2 - Letras Minúsculas\n")) 
    
    
      #Transforma texto em minúsculas (padronização antes de ser trabalhado)
      #transform name into lower case
      name = name.lower()
    
    
      #Definindo tamanho do texto
      #defining names length
      nameLength = len(name)
    
    
      #Variável para ser preenchida pelo texto corrigido
      #Variable used to fill with fixed characters
      nameFixed = ""
    
    
      #Corrigindo caracteres
      #Fixing characters
      while(I < nameLength):
    
    
          if(name[I] == "ã"):
              nameFixed = nameFixed + "a"
    
          elif(name[I] == "â"):
              nameFixed = nameFixed + "a"   
          
          elif(name[I] == "á"):
              nameFixed = nameFixed + "a" 
    
          elif(name[I] == "à"):
              nameFixed = nameFixed + "a"    
    
          elif(name[I] == "ä"):
              nameFixed = nameFixed + "a"    
          
          elif(name[I] == "ê"):
              nameFixed = nameFixed + "e"
          
          elif(name[I] == "é"):
              nameFixed = nameFixed + "e"
    
          elif(name[I] == "è"):
              nameFixed = nameFixed + "e"
    
          elif(name[I] == "ë"):
              nameFixed = nameFixed + "e"
    
          elif(name[I] == "ì"):
              nameFixed = nameFixed + "i"
    
          elif(name[I] == "î"):
              nameFixed = nameFixed + "i"
    
          elif(name[I] == "í"):
              nameFixed = nameFixed + "i"
    
          elif(name[I] == "ï"):
              nameFixed = nameFixed + "i"
    
          elif(name[I] == "ö"):
              nameFixed = nameFixed + "o"
    
          elif(name[I] == "ò"):
              nameFixed = nameFixed + "i"
          
          elif(name[I] == "ó"):
              nameFixed = nameFixed + "o"
    
          elif(name[I] == "õ"):
              nameFixed = nameFixed + "o"
    
          elif(name[I] == "ô"):
              nameFixed = nameFixed + "o"
    
          elif(name[I] == "ú"):
              nameFixed = nameFixed + "u"
    
          elif(name[I] == "ù"):
              nameFixed = nameFixed + "u"
    
          elif(name[I] == "û"):
              nameFixed = nameFixed + "u"
    
          elif(name[I] == "ü"):
              nameFixed = nameFixed + "u"
              
          elif(name[I] == "ç"):
              nameFixed = nameFixed + "c"
    
          elif(name[I] in punctuation ):
              nameFixed = nameFixed    
          
          elif(name[I] not in printable ):
              nameFixed = nameFixed
          
          else:
              nameFixed = nameFixed + name[I]
    
          I = I + 1
    
    
    
      if(optionChangeLetters == 1):
          #Transformando texto em maiúsculas
          #turning name into upper case
          nameUpper = nameFixed.upper()    
    
    
          #Imprimir texto
          #print name
          print(nameUpper)
    
    
    
      elif(optionChangeLetters == 2):
          #Transformar texto em minúsculas
          #turning name into lower case
          nameLower = nameFixed.lower()
    
    
          #Imprimir texto
          #print name
          print(nameLower)
      
      else:
          print("Opção incorreta. Selecionar opção válida.")        
    
    
    
      #Verificar se deseja continuar
      #Verify if you want to continue
      optionUseProgram = int(input("Deseja transformar outro nome?\nSim - 1 | Não - 0\n"))
    
    Compartilhe
    Recomendados para você
    GitHub Copilot - Código na Prática
    CI&T - Backend com Java & AWS
    Nexa - Machine Learning e GenAI na Prática
    Comentários (0)