🎉 SEMANA DO CONSUMIDOR

Últimos dias para comprar os cursos com 50% de desconto

Ver detalhes

Postado em em 26 de novembro de 2024

Você sabe para que serve o underline no Python? Já se perguntou qual é a função do famoso underscore (_)? Aprenda de vez o que ele faz e como utilizá-lo de forma prática nos seus códigos!

Se quiser pode acompanhar esse conteúdo em formato de vídeo ou pode acessar o nosso Canal do YouTube para mais vídeos!

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

Não vamos te encaminhar nenhum tipo de SPAM! A Hashtag Treinamentos é uma empresa preocupada com a proteção de seus dados e realiza o tratamento de acordo com a Lei Geral de Proteção de Dados (Lei n. 13.709/18). Qualquer dúvida, nos contate.

Underline no Python – Para que serve o Underscore em Python?

Você já se perguntou para que serve o underline no Python? A verdade é que ele não tem uma funcionalidade fixa! Como assim? Isso significa que o underline não é usado para um propósito único, o que nos dá a liberdade de utilizá-lo de diversas formas.

O uso do underline (_) no Python está diretamente ligado a convenções de codificação da linguagem.

Ou seja, ele não é apenas um caractere qualquer, mas desempenha um papel importante na criação de códigos mais legíveis, organizados e alinhados às melhores práticas de programação.

Nesta aula, vou te mostrar como o underscore pode ser aplicado de maneira prática em três cenários principais: como separador de milhar, para variáveis temporárias ou inúteis, e para métodos ou variáveis privadas em classes.

Separador de Milhar

A primeira funcionalidade do underline no Python é como separador de milhar. Podemos utilizá-lo para melhorar a legibilidade de números grandes.

Quando lidamos com números extensos, a leitura pode ser difícil devido à quantidade de dígitos. O underline resolve isso, funcionando como um separador visual de milhar, sem alterar o valor numérico ou interferir nos cálculos.

Imagine que você tenha um número como 1000000. À primeira vista, pode ser confuso identificar se é um milhão ou cem mil.

Ao usar o underline, como em 1_000_000, a leitura se torna direta e intuitiva, especialmente em situações em que precisamos lidar com valores grandes com frequência.

Ou seja, em Python, 1_000_000 é equivalente a 1000000, mas nos permite uma leitura mais rápida e fácil.

faturamento = 1_000_000

print(faturamento)
Separador de Milhar

Perceba que a saída do código será 1000000. Isso acontece porque o underline não altera o valor do número. Ele é apenas um recurso visual.

Você também pode utilizá-lo em cálculos normalmente:

faturamento = 1_000_000

lucro = faturamento - 200_000
print(lucro)
Usando Separador de Milhar com underline

Sempre que você declarar números diretamente no código, é recomendável usar o underline como separador de milhar para melhorar a legibilidade.

Variáveis Temporárias ou Inúteis

Em algumas situações, o Python exige que criemos variáveis, mesmo quando não pretendemos usá-las. Para esses casos, o underline é a solução ideal.

Isso é útil porque muitas funções retornam múltiplos valores, mas nem sempre precisamos de todos. Nesses casos, podemos usar o underline para indicar que um dos valores não será utilizado.

Por exemplo, considere uma função que calcula o imposto de uma empresa e retorna duas informações: o valor do imposto e se a empresa está isenta ou não do pagamento.

def calcular_imposto(faturamento):
    if faturamento < 1000:
        taxa = 0
    elif faturamento < 10000:
        taxa = 0.1
    elif faturamento < 500000:
        taxa = 0.15
    else:
        taxa = 0.2
    if taxa == 0:
        isento_imposto = True
    else:
        isento_imposto = False

    imposto = taxa * faturamento
    return imposto, isento_imposto

Essa função retorna obrigatoriamente uma tupla contendo as informações do valor do imposto e da isenção.

No entanto, se no seu código você só pretende usar o valor do imposto, não há como chamar a função sem atribuir as duas informações a uma variável.

Para indicar que uma dessas informações é desnecessária para o restante do código, você pode armazená-la em uma variável que recebe o _ como nome.

faturamento = 15000

valor_imposto, _ = calcular_imposto(faturamento)

lucro = faturamento - valor_imposto
print(lucro)
Variáveis Temporárias ou Inúteis

Aqui, ignoramos a informação de isenção de imposto, pois não era relevante para o cálculo de lucro que queríamos realizar.

Outra aplicação útil é em loops for, quando o valor iterado não é necessário para nada. Por exemplo, em um loop que executa uma ação repetidamente:

for _ in range(5):
    print("Usando underline no loop")
Underline no loop for

Nesse caso, estamos interessados apenas no número de repetições, e não nos valores iterados.

Métodos e Variáveis Privadas em Classes

Quando criamos classes no Python, muitas vezes é necessário definir métodos ou variáveis que só devem ser usados dentro da própria classe.

O uso do _ ou __ no início do nome de métodos e variáveis é uma convenção para indicar que esses elementos são privados ou internos à classe.

Métodos e variáveis protegidas e privadas:

  • _nome: Indica que a variável ou método é “protegido” e deve ser usado apenas na própria classe ou em subclasses.
  • __nome: Fornece um maior encapsulamento, dificultando o acesso externo.

Imagine que você está trabalhando com um código para um serviço de streaming. Vamos criar uma classe chamada Filme, que representa informações sobre um filme.

class Filme():
    def __init__(self, titulo, descricao):
        self.titulo = titulo
        self.descricao = descricao

    def detalhar_filme(self):
        print("Titulo", self.titulo)
        print("Descrição", self.descricao)

No código acima, as variáveis titulo e descricao são acessíveis fora da classe. Ou seja, após criar o objeto Filme, você consegue acessar diretamente o conteúdo dessas variáveis.

Da mesma forma, a função detalhar_filme() pode ser chamada fora da classe após o objeto filme ter sido criado.

meu_filme = Filme("Avatar", "Carinhas azuis defendendo o planeta deles")

titulo_filme = meu_filme.titulo
print(titulo_filme)

meu_filme.detalhar_filme()
Métodos e Variáveis Privadas em Classes

Já o método __init__, por sua vez, é um método especial e de uso interno para a inicialização do objeto. Seu uso não é destinado fora da classe, pois ele serve apenas para configurar o objeto quando ele é criado.

Embora seja possível acessar métodos privados diretamente, como objeto._Classe__metodo, essa prática não é recomendada. Isso quebra o encapsulamento e pode levar a erros em projetos maiores.

Caso você ainda não domine completamente os conceitos sobre classes no Python, recomendo os seguintes materiais para aprofundar seu conhecimento:

Boas Práticas do Uso de Underline no Python

Como vimos, o underline no Python não é apenas um caractere comum. Ele é uma convenção importante e uma boa prática na escrita de códigos, tornando-os mais legíveis e eficientes. Por isso, lembre-se de sempre utilizá-lo nas seguintes situações:

  • Separador de milhar: Use o underline para melhorar a legibilidade de números grandes. Isso facilita a leitura e compreensão de valores com muitos dígitos.
  • Variáveis temporárias: Utilize o _ para variáveis que são necessárias por estrutura, mas irrelevantes no contexto lógico do código. Isso ajuda a indicar que o valor da variável não será utilizado.
  • Métodos e variáveis privadas: Siga a convenção _ ou __ para reforçar a organização e a clareza do código, garantindo que cada elemento tenha sua função bem definida. Isso ajuda a encapsular dados e evita que partes do código sejam acessadas de forma indevida.

Conclusão – Underline no Python – Para que serve o Underscore em Python?

O underline no Python é um caractere simples, mas desempenha um papel importante na organização e na comunicação do código.

Na aula de hoje, mostramos 3 usos principais do underscore em Python, e como adotar essas convenções pode ser um passo importante para quem busca escrever códigos mais limpos, legíveis e alinhados com as boas práticas da comunidade Python.

Agora que você sabe como o underline funciona e como aplicá-lo, comece a utilizá-lo nos seus projetos. Ele não apenas tornará o seu código mais organizado, mas também mais fácil de entender para outros programadores que trabalharem com você!

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso básico gratuito?

Posts mais recentes de Python

Posts mais recentes da Hashtag Treinamentos

Diego Monutti

Expert em conteúdos da Hashtag Treinamentos. Auxilia na criação de conteúdos de variados temas voltados para aqueles que acompanham nossos canais.