Menu
CoddyTech

O que é uma variável?

Em programação, uma variável é um lugar com nome na memória que guarda um valor que o seu programa pode ler e alterar enquanto executa. O nome, como score ou user_name, permite que o código se refira ao valor sem saber onde ele está guardado.

Por Kevin Spektor, Cofundador e CTO

Atualizado em 24 de setembro de 2026

Um jogo que marca pontos precisa lembrar um número, somar a ele e mostrá-lo no final. O número não pode estar escrito no código, porque ele é diferente toda vez que alguém joga. Então o programa reserva um lugar na memória, dá a ele um nome como score e usa esse nome sempre que precisa do valor atual.

Como uma variável funciona

Três coisas acontecem com uma variável durante um programa:

  1. Criação. O programa reserva memória para um valor e liga um nome a ela. Em Python isso acontece na primeira vez que você atribui algo ao nome. Em Java e C você declara a variável antes, com um tipo, como em int score;.
  2. Atribuição. Um valor é guardado sob o nome com =. Atribuir de novo substitui o valor antigo.
  3. Uso. Sempre que o nome aparece em uma expressão, o programa lê o valor que ele guarda naquele momento.
Start: 0
After one point: 10
Doubled: 20

Em cada linha de atribuição, o lado direito é calculado primeiro, usando o valor que score tem naquele momento. Depois o resultado é guardado de volta sob o mesmo nome. O nome continua o mesmo, enquanto o valor que ele guarda varia.

O sinal de igual significa "guarde"

Na matemática, x = x + 1 não tem solução. Em um programa, é uma instrução comum: pegue o valor atual de x, some 1 e guarde o resultado em x. O sinal = é o operador de atribuição, e ele sempre leva um valor do lado direito para o nome do lado esquerdo.

Para perguntar se dois valores são iguais, as linguagens de programação usam outro operador, ==. A expressão x == 5 não altera nada; ela produz True ou False, um booleano.

O sentido matemático é parecido, mas não é o mesmo. Na álgebra, o x em 2x + 3 = 7 representa um número desconhecido que você precisa descobrir. Em um programa, uma variável guarda um valor conhecido que pode mudar enquanto o programa executa.

Variáveis e tipos de dados

Todo valor tem um tipo: um número inteiro, um número decimal, um texto, um booleano, uma lista. As linguagens diferem sobre se a própria variável tem um tipo.

Em Python e JavaScript, o tipo está no valor, e uma variável pode guardar valores de tipos diferentes ao longo do tempo. Isso se chama tipagem dinâmica:

42 <class 'int'>
forty-two <class 'str'>

Em Java, C e C++, a variável tem um tipo fixo, escolhido quando você a declara. Isso é tipagem estática: o compilador rejeita o código que tenta guardar texto em uma variável int, antes mesmo de o programa executar.

int age = 30;          // Java: type, name, value
String name = "Rosa";
let age = 30;          // JavaScript: can be reassigned
const PI = 3.14159;    // cannot be reassigned

Em C, o tipo também decide quanta memória a variável ocupa. Um int tem 4 bytes em quase todos os sistemas atuais, um double tem 8 e um char tem exatamente 1. Para guardar muitos valores sob um único nome, como todas as pontuações de um jogo, você usa um array ou uma lista e acessa cada valor pela posição, como em scores[0].

Caixas e etiquetas

Uma imagem comum de variável é uma caixa que guarda um valor. Essa imagem funciona bem para C: int x; é de fato uma área fixa de memória, e y = x; copia o valor para uma segunda área.

Python funciona mais como etiquetas. Todo valor é um objeto, e uma variável é um nome preso a um deles. A diferença aparece quando dois nomes se referem à mesma lista:

5 6
[1, 2, 3, 4]

Com os números, y = y + 1 cria um número novo e move a etiqueta y para ele, então x continua se referindo a 5. Com a lista, b = a não copia nada: os dois nomes se referem a uma única lista, então uma mudança feita por b aparece por a. Escreva b = a.copy() quando quiser uma lista separada. Objetos e arrays em Java e JavaScript se comportam do mesmo jeito.

Escopo: onde uma variável existe

Uma variável só é visível em uma parte do programa, chamada de escopo. Uma variável criada dentro de uma função é local: ela existe enquanto a função executa e desaparece quando a função retorna. Uma variável criada no nível mais alto de um arquivo é global e pode ser lida em qualquer lugar desse arquivo.

Variáveis locais são mais fáceis de entender, porque toda linha que pode alterá-las está dentro de uma única função. Programas que dependem de muitas variáveis globais são mais difíceis de depurar pelo motivo oposto.

Como nomear variáveis

Bons nomes dizem o que o valor significa: total_price, is_logged_in, retries_left. A maioria das linguagens segue as mesmas regras:

  • um nome é feito de letras, dígitos e underscores, e não pode começar com um dígito;
  • um nome não pode ser uma palavra-chave da linguagem, como if, for ou class;
  • os nomes diferenciam maiúsculas de minúsculas, então total e Total são duas variáveis diferentes.

O estilo muda com a linguagem. Python usa snake_case (user_name), enquanto Java e JavaScript usam camelCase (userName). Valores que nunca devem mudar costumam ter o nome em maiúsculas, como em MAX_SIZE.

Erros comuns

Usar uma variável antes de ela ter um valor. Python para com um NameError:

NameError: name 'total' is not defined

O mesmo erro aparece quando um nome está escrito errado, porque totla e total são nomes diferentes para o computador.

Escrever = quando você quer dizer ==. Em Python, if x = 5: é um erro de sintaxe, então você descobre na hora. Em C e JavaScript, if (x = 5) é código válido: ele guarda 5 em x, e a condição é sempre verdadeira. O programa executa e dá resultados errados, um erro de lógica que pode levar muito tempo para ser encontrado.

Dar dois papéis a uma variável. Uma variável que guarda um preço no início de uma função e uma contagem no final ainda funciona, mas todo leitor precisa acompanhar qual significado vale naquele momento. Dê a cada significado o seu próprio nome.

Para onde ir agora

Variáveis guardam valores, e o próximo passo é saber que tipos de valores existem: leia o que é um booleano para verdadeiro e falso, e o que é um array para muitos valores sob um único nome. O guia de variáveis em Python aborda atribuição, regras de nomes e atribuição múltipla em mais detalhes, e o curso de Python faz você escrever e alterar variáveis desde a primeira lição.

Perguntas frequentes

O que é uma variável em Python?
Uma variável em Python é um nome que se refere a um valor. Você a cria atribuindo algo a ela, como em age = 30, sem declarar o tipo, e o mesmo nome pode depois se referir a um valor de outro tipo. Por convenção, os nomes de variáveis em Python são escritos em snake_case.
Qual é uma definição simples de variável?
Uma variável é um nome para um valor que um programa guarda e pode alterar. O nome continua o mesmo enquanto o valor por trás dele pode ser trocado, como um placar que mantém o rótulo "Casa" enquanto o número embaixo dele sobe.
Como explicar o que é uma variável para uma criança?
Compare com uma caixa com uma etiqueta. A etiqueta é o nome, como score, e a caixa guarda uma coisa de cada vez. Você pode olhar dentro para ver o que tem lá, ou tirar o que está dentro e colocar algo novo, e a etiqueta continua a mesma.
Qual é a diferença entre variável e constante?
O valor de uma variável pode ser alterado depois de definido, enquanto o valor de uma constante fica fixo depois de atribuído. Java marca constantes com final, e JavaScript e C usam const. Python não tem constantes garantidas pela linguagem, então os programadores escrevem o nome em maiúsculas, como MAX_USERS, para indicar que ele não deve mudar.
Quais são os tipos de variáveis em programação?
As variáveis costumam ser agrupadas pelo lugar onde são visíveis: variáveis locais existem dentro de uma função, variáveis globais são visíveis em um arquivo ou programa inteiro, e variáveis de instância pertencem a um objeto de uma classe. Elas também são descritas pelo tipo de valor que guardam, como inteiro, número de ponto flutuante, string ou booleano.
Ilustração das linguagens de programação do Coddy

Aprenda a programar com o Coddy

COMEÇAR