🇯🇵 日本語 | 🇺🇸 English | 🇪🇸 Español | 🇵🇹 Português | 🇹🇭 ไทย | 🇨🇳 中文

Um guia simples sobre variáveis e tipos de dados do Python

Para executar Python no prompt de comando ou PowerShell no seu PC, é necessário baixar e instalar o Python.
Se ainda não o fez, consulte o artigo Instalação do Python e configuração do ambiente de desenvolvimento para instalar o Python.

Introdução: O primeiro passo na programação começa com "Variáveis" e "Tipos de Dados"

Olá a todos que estão entrando no mundo da criação de sites! Depois que você se acostuma a criar o visual com HTML e CSS, o próximo passo é adicionar "movimento" e "processamento de dados" — o mundo da programação o aguarda. Dentre as opções, Python é especialmente escolhido por muitos criadores da web por ser simples e fácil de aprender.

Ao aprender a programar, todos encontram primeiro as "variáveis" e os "tipos de dados". Estes são os mecanismos mais fundamentais para um programa lidar com dados, e podem ser considerados o esqueleto da programação.

Você pode pensar "isso parece um pouco difícil...", mas não se preocupe! Neste artigo, explicaremos as variáveis e os tipos de dados do Python de uma maneira muito gentil, usando analogias familiares. Todo o código apresentado pode ser executado em seu computador apenas copiando e colando. Esperamos que você sinta a alegria de programar não apenas "lendo e entendendo", mas também "executando e experimentando".

Vamos lá, vamos explorar juntos o mundo do Python e levar suas habilidades de criação web para o próximo nível!


Capítulo 1: O que são variáveis? A caixa mágica para guardar dados

Em programação, uma variável é, em poucas palavras, como uma "caixa para guardar dados". Você pode dar a esta caixa o nome (rótulo) que quiser, colocar dados como números ou texto dentro dela, e depois retirá-los livremente ou substituir o conteúdo.

Por exemplo, digamos que você esteja criando uma autoapresentação. Você tem a frase "Meu nome é João da Silva. Tenho 30 anos." Se a cada vez que o nome ou a idade mudassem você tivesse que corrigir o texto em vários lugares, seria um grande trabalho, certo? É aí que as variáveis entram.

1-1. Como criar uma variável (Atribuição)

Colocar dados em uma "caixa" chamada variável é conhecido no mundo da programação como "atribuição". Em Python, você escreve isso usando o sinal de = (igual).

Você pode criar uma variável facilmente apenas escrevendo nome_da_variavel = dado. Vamos experimentar.

O código a seguir coloca a string "João da Silva" em uma variável chamada name, e o número 30 em uma variável chamada age.

# Atribui a string "João da Silva" à variável name
name = "João da Silva"

# Atribui o número 30 à variável age
age = 30

1-2. Vamos ver o conteúdo de uma variável (Saída)

Apenas colocar dados em uma variável não faz nada acontecer. Você quer poder verificar o conteúdo, certo? É aí que você usa a função print(). Se você colocar o nome da variável dentro dos parênteses de print(), os dados armazenados nessa variável serão exibidos (saída).

name = "João da Silva"
age = 30

# Exibe o conteúdo da variável name
print(name)

# Exibe o conteúdo da variável age
print(age)

1-3. O conteúdo de uma variável pode ser alterado

O prático sobre as variáveis é que, mesmo depois de armazenar dados, você pode sobrescrevê-los com novos dados. Pense nisso como trocar o conteúdo da caixa.

No exemplo abaixo, o conteúdo da variável job, que inicialmente continha "Web Designer", é alterado posteriormente para "Diretor de Web". Ao exibir com print(), você pode confirmar que o conteúdo realmente mudou.

job = "Web Designer"
print(job) # Neste ponto, "Web Designer" é exibido

# Atribui novos dados à mesma variável (sobrescreve)
job = "Diretor de Web"
print(job) # "Diretor de Web" é exibido

Capítulo 2: O que são tipos de dados? Os tipos de coisas que você coloca na caixa

Eu expliquei que você pode colocar vários tipos de dados na "caixa" da variável. Esse "tipo de dado" é chamado de tipo de dado.

Por que os tipos de dados são importantes? Por exemplo, se você tem o dado "100", é o número 100 ou o texto "100"? Um humano pode julgar pelo contexto, mas você precisa dizer explicitamente a um computador a diferença. Se for um número, você pode fazer adição e subtração, mas não pode se for texto, certo?

Python tem muitos tipos de dados disponíveis, mas vamos começar aprendendo os básicos que são especialmente comuns na criação web.

2-1. String (cadeia de caracteres) - Para representar texto

O tipo que lida com sequências de caracteres, como frases e palavras, é o tipo string. Em Python, ele é representado como str. A regra para lidar com strings em um programa é colocá-las entre " " (aspas duplas) ou ' ' (aspas simples).

# Uma string usando aspas duplas
greeting = "Olá, Mundo!"
print(greeting)

# Uma string usando aspas simples
site_name = 'Web Creator Box'
print(site_name)

2-2. Número (number) - Deixe os cálculos com eles

Como o nome sugere, este é um tipo de dado para lidar com números. Em Python, usamos principalmente dois tipos.

Você escreve os números como eles são, sem colocá-los entre " ". Se você os colocar entre aspas, eles se tornam strings, não números, então tome cuidado.

# Tipo inteiro (int)
user_count = 150
print(user_count)

# Tipo ponto flutuante (float)
tax_rate = 1.10
print(tax_rate)

# Você também pode realizar cálculos com números
total_price = 5000 * tax_rate
print(total_price)

2-3. Booleano (boolean) - Uma escolha de Sim/Não

O tipo booleano é um tipo de dado muito simples que só pode ter um de dois valores: True (verdadeiro) ou False (falso). É representado como bool.

É extremamente útil para gerenciar estados que podem ser respondidos com Sim/Não, como "O usuário está logado?" ou "A configuração de publicação está ativada?". É frequentemente usado na implementação de funcionalidades de sites.

# Representa o estado de login do usuário com True
is_logged_in = True
print(is_logged_in)

# Representa um estado de artigo não publicado com False
is_published = False
print(is_published)

2-4. Lista (list) - Armazenando múltiplos dados em ordem

O tipo lista é usado quando você quer armazenar múltiplos dados em uma única variável, mantendo-os em ordem. Você envolve tudo com [ ] (colchetes) e separa cada item com uma , (vírgula).

É útil quando você quer lidar com vários itens juntos, como uma "Lista de Notícias" ou "Lista de Categorias de Produtos" em um site. Os tipos de dados dos itens dentro da lista podem ser misturados.

# Gerencia hobbies com uma lista
hobbies = ["Ler", "Assistir filmes", "Programar", "Caminhar"]
print(hobbies)

# Acessa os dados usando seu número de índice (que começa em 0)
print(hobbies[0]) # Exibe o primeiro elemento, "Ler"
print(hobbies[2]) # Exibe o terceiro elemento, "Programar"

2-5. Dicionário (dictionary) - Gerenciando com pares chave-valor

O tipo dicionário, como uma lista, pode armazenar múltiplos dados, mas há uma grande diferença. Enquanto uma lista gerencia dados por "ordem", um dicionário os gerencia usando pares de "chave" e "valor".

Você envolve tudo com { } (chaves) e escreve os dados no formato "chave": valor.

É perfeito para quando você quer anexar rótulos significativos a cada dado, como informações de perfil de uma pessoa onde "nome" é "Maria Oliveira" e "idade" é "25".

# Gerencia um perfil de usuário com um dicionário
user_profile = {
    "name": "Maria Oliveira",
    "age": 25,
    "job": "Engenheira de Web",
    "is_student": False
}
print(user_profile)

# Acessa os dados especificando a chave
print(user_profile["name"]) # Exibe "Maria Oliveira"
print(user_profile["job"])  # Exibe "Engenheira de Web"

2-6. Verificando tipos de dados com a função `type()`

Quando você quer verificar "Qual tipo de dado está atualmente nesta variável?", a função type() é muito útil. Apenas coloque o nome da variável dentro dos parênteses, e ela lhe dirá o tipo de dado.

text = "Olá"
number = 123
pi = 3.14
is_active = True
items = [1, 2, 3]
profile = {"name": "Silva"}

print( type(text) )      # Exibe 
print( type(number) )    # Exibe 
print( type(pi) )        # Exibe 
print( type(is_active) ) # Exibe 
print( type(items) )     # Exibe 
print( type(profile) )   # Exibe 

Capítulo 3: Formas avançadas de usar os tipos de dados

Uma vez que você aprendeu os tipos de dados básicos, vamos ver como combiná-los ou convertê-los. Ser capaz de fazer isso expandirá muito sua gama de expressão.

3-1. Concatenação de strings

Você pode unir strings usando o operador +.

primeiro_nome = "Maria"
sobrenome = "Silva"

nome_completo = primeiro_nome + " " + sobrenome
print(nome_completo) # Exibe "Maria Silva"

3-2. Combinando strings e variáveis (f-strings)

Você frequentemente vai querer embutir o valor de uma variável dentro de uma frase, como "Sua pontuação é 100 pontos." A "f-string" (string literal formatada) é extremamente útil para isso.

Colocando um f antes da aspa de abertura da string e envolvendo as variáveis com { }, você pode combinar facilmente strings e variáveis. Esta é uma maneira moderna e muito comum de escrever em Python.

user_name = "Visitante"
points = 120

# Cria uma string usando uma f-string
message = f"A pontuação atual de {user_name} é {points} pontos."
print(message)

3-3. Conversão de tipos de dados (casting)

Quando você está programando, encontrará situações em que deseja "tratar um número como uma string" ou, inversamente, "tratar uma string de dígitos como um número para cálculos." Converter um tipo de dado para outro como isso é chamado de casting.

No exemplo abaixo, se você unir as strings "100" e "50" com +, elas são concatenadas como texto, resultando em "10050". Ao convertê-las para números com int() antes de somar, obtemos corretamente o resultado do cálculo de 150.

# Dados de entrada do usuário são inicialmente tratados como string, mesmo que sejam um número
input_str_num1 = "100"
input_str_num2 = "50"

# Concatena como strings
print(input_str_num1 + input_str_num2) # Resulta em "10050"

# Converte para números com int() antes de calcular
num1 = int(input_str_num1)
num2 = int(input_str_num2)
print(num1 + num2) # Exibe corretamente 150

Capítulo 4: Aplicando na criação Web! Vamos gerar HTML com Python

Agora, vamos tentar um exemplo prático que é familiar para todos vocês, criadores da web, usando as variáveis e tipos de dados que aprendemos até agora. Este é um exemplo avançado onde usamos um programa Python para gerar dinamicamente um arquivo HTML.

Por exemplo, imagine uma página de apresentação da equipe em um site. É muito trabalho atualizar manualmente o HTML toda vez que um novo membro da equipe entra. Mas com Python, você pode gerar automaticamente uma página de perfil em HTML com base nos dados da equipe (gerenciados como um dicionário).

[Exemplo Completo] Gerando uma página de perfil HTML com Python

O código Python a seguir é um programa que escreve um arquivo HTML chamado profile.html com base nas informações de perfil armazenadas em um dicionário chamado profile_data.

Tente copiar este código, salvá-lo com um nome como profile_generator.py e executá-lo. Um arquivo chamado profile.html deve ser gerado na mesma pasta.

# profile_generator.py

# Gerencia dados de perfil com um dicionário
profile_data = {
    "name": "Ana Costa",
    "job": "Web Designer",
    "skills": ["HTML", "CSS", "JavaScript", "Python"],
    "introduction": "Eu me esforço para criar designs que são bonitos e têm código limpo. Ultimamente, estou viciada em usar Python para automação do trabalho!"
}

# Cria a estrutura HTML usando uma f-string
# Estamos embutindo dados do dicionário e da lista
html_content = f"""
<!DOCTYPE html>
<html lang="pt">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Perfil de {profile_data['name']}</title>
    <style>
        body {{ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; line-height: 1.7; color: #333; background-color: #fdfdfd; max-width: 800px; margin: 2rem auto; padding: 0 1.5rem; }}
        .profile-card {{ background: #fff; border: 1px solid #e0e0e0; border-radius: 12px; padding: 2.5rem; box-shadow: 0 6px 12px rgba(0,0,0,0.08); }}
        h1 {{ color: #2c3e50; font-size: 2.5rem; margin-bottom: 0.5rem; }}
        h2 {{ color: #34495e; border-bottom: 2px solid #3498db; padding-bottom: 0.5rem; margin-top: 2rem; }}
        p {{ margin: 1rem 0; }}
        .job-title {{ color: #7f8c8d; font-size: 1.2rem; font-weight: bold; margin-bottom: 2rem; }}
        .skills-list {{ list-style: none; padding: 0; margin-top: 1rem; }}
        .skills-list li {{ background: #3498db; color: white; padding: 0.3rem 1rem; border-radius: 16px; display: inline-block; margin: 0.3rem; font-size: 0.9rem; }}
    </style>
</head>
<body>
    <div class="profile-card">
        <h1>{profile_data['name']}</h1>
        <p class="job-title">{profile_data['job']}</p>
        <h2>Introdução</h2>
        <p>{profile_data['introduction']}</p>
        <h2>Habilidades</h2>
        <ul class="skills-list">
            {''.join([f'<li>{skill}</li>' for skill in profile_data['skills']])}
        </ul>
    </div>
</body>
</html>
"""

# Abre o arquivo no modo de escrita e escreve o conteúdo
try:
    with open("profile.html", "w", encoding="utf-8") as f:
        f.write(html_content)
    print("✅ Sucesso: profile.html foi gerado. Abra o arquivo para conferir.")
except IOError as e:
    print(f"❌ Erro: Falha ao escrever no arquivo. {e}")


O código completo do arquivo HTML gerado

Quando você executa o script Python acima, um arquivo profile.html com o seguinte conteúdo será criado. Se você abri-lo em um navegador, uma página de perfil com estilo simples deve ser exibida.

Desta forma, usando habilmente as variáveis e tipos de dados do Python (especialmente dicionários e listas), você pode ir um passo além de um simples site estático para criar conteúdo orientado a dados.

<!DOCTYPE html>
<html lang="pt">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Perfil de Ana Costa</title>
    <style>
        body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; line-height: 1.7; color: #333; background-color: #fdfdfd; max-width: 800px; margin: 2rem auto; padding: 0 1.5rem; }
        .profile-card { background: #fff; border: 1px solid #e0e0e0; border-radius: 12px; padding: 2.5rem; box-shadow: 0 6px 12px rgba(0,0,0,0.08); }
        h1 { color: #2c3e50; font-size: 2.5rem; margin-bottom: 0.5rem; }
        h2 { color: #34495e; border-bottom: 2px solid #3498db; padding-bottom: 0.5rem; margin-top: 2rem; }
        p { margin: 1rem 0; }
        .job-title { color: #7f8c8d; font-size: 1.2rem; font-weight: bold; margin-bottom: 2rem; }
        .skills-list { list-style: none; padding: 0; margin-top: 1rem; }
        .skills-list li { background: #3498db; color: white; padding: 0.3rem 1rem; border-radius: 16px; display: inline-block; margin: 0.3rem; font-size: 0.9rem; }
    </style>
</head>
<body>
    <div class="profile-card">
        <h1>Ana Costa</h1>
        <p class="job-title">Web Designer</p>
        <h2>Introdução</h2>
        <p>Eu me esforço para criar designs que são bonitos e têm código limpo. Ultimamente, estou viciada em usar Python para automação do trabalho!</p>
        <h2>Habilidades</h2>
        <ul class="skills-list">
            <li>HTML</li><li>CSS</li><li>JavaScript</li><li>Python</li>
        </ul>
    </div>
</body>
</html>

Capítulo 5: Pontos importantes a observar sobre variáveis e tipos de dados

Finalmente, vamos apresentar alguns pontos nos quais os iniciantes costumam tropeçar ao lidar com variáveis e tipos de dados, e algumas boas regras a saber.

  1. Siga as convenções de nomenclatura
    Você não pode simplesmente nomear uma variável de qualquer jeito. Em Python, você usa uma combinação de letras minúsculas, números e sublinhados (_). O estilo "snake_case", onde as palavras são separadas por sublinhados (ex: user_name, total_price), é recomendado. Escolha nomes que sejam fáceis de entender e consistentes.
  2. Você não pode usar palavras reservadas
    Palavras que têm um significado especial na sintaxe do Python (como if, for, class, print, etc.) não podem ser usadas como nomes de variáveis. Elas são chamadas de "palavras reservadas".
  3. Maiúsculas e minúsculas importam
    Uma variável chamada name e uma variável chamada Name são tratadas como duas coisas completamente diferentes. Tenha cuidado, pois isso pode causar erros inesperados.
  4. Entenda que é uma linguagem de tipagem dinâmica
    Python é uma "linguagem de tipagem dinâmica", onde o tipo de uma variável é determinado automaticamente pelos dados que você coloca nela. Embora isso facilite a escrita, também significa que você pode atribuir posteriormente uma string a uma variável que inicialmente continha um número. É um bom hábito verificar ocasionalmente se o tipo mudou sem querer usando a função type().

Conclusão: Solidifique suas bases de programação e avance para o próximo passo!

Neste artigo, cobrimos o cerne da programação em Python — "variáveis" e "tipos de dados" — desde o uso básico até exemplos práticos na criação web.

Variáveis e tipos de dados são a base para toda a sintaxe básica do Python que você aprenderá a seguir, como ramificação condicional (instruções if), laços (laços for) e funções. Construir uma base sólida aqui é a chave para um aprendizado tranquilo no futuro.

Por favor, tente executar o código deste artigo várias e várias vezes para aproveitar ao máximo a diversão de "fazer seu próprio código funcionar". O acúmulo dessas pequenas experiências de sucesso certamente o guiará para se tornar um criador melhor.

Em seguida, vamos avançar para o mundo da "ramificação condicional", onde o tipo booleano (True/False) que aprendemos hoje desempenha um papel ativo!

Para o próximo artigo: Domine a ramificação condicional com a instrução if do Python