Tipos de Dados e Operadores em Python

PythonBeginner
Pratique Agora

Introdução

Bem-vindo ao mundo do Python! Neste laboratório, você conhecerá os blocos de construção básicos da programação em Python: tipos de dados e operadores. Exploraremos números, textos e valores verdadeiro/falso. Você também aprenderá a realizar cálculos e comparações. Este laboratório foi projetado para iniciantes, por isso avançaremos passo a passo. Não se preocupe se tudo parecer novo — estamos aqui para guiá-lo. Vamos começar!

Este é um Laboratório Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para concluir cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível intermediário com uma taxa de conclusão de 68%. Ele recebeu uma taxa de avaliação positiva de 99% dos alunos.

Entendendo Números em Python

Nesta etapa, veremos os dois principais tipos de números em Python: inteiros (números inteiros) e floats (números com decimais).

Primeiro, abra o interpretador Python. Esta é uma ferramenta que permite executar código Python linha por linha. Para iniciantes, a Interface Desktop é mais amigável. Se você se sente confortável com o terminal, pode alternar para a aba Terminal separada no canto superior esquerdo para uma operação mais fluida. Ambas as abordagens alcançam o mesmo resultado.

Terminal Tab

Digite isto no seu terminal:

python

Você deverá ver >>>. Isso significa que o Python está pronto para seus comandos.

Python Interpreter

Vamos começar com os inteiros (integers). Inteiros são números inteiros, como -1, 0 e 100.

books = 5
print(f"I have {books} books.")
type(books)

Saída:

I have 5 books.
<class 'int'>

Aqui, criamos uma variável chamada books e atribuímos a ela o valor 5. Uma variável é como uma caixa onde você pode armazenar informações. A função print() exibe a saída na tela. Usamos uma f-string (observe o f antes das aspas) para incluir facilmente o valor da nossa variável books dentro do texto. A função type() nos informa que books contém um int (inteiro).

Em seguida, vamos explorar os números de ponto flutuante, ou floats. Estes são números com um ponto decimal.

price = 19.99
print(f"This book costs ${price}.")
type(price)

Saída:

This book costs $19.99.
<class 'float'>

A variável price é um float porque possui um ponto decimal.

Agora, vamos fazer um cálculo simples. O Python pode ser usado como uma calculadora!

quantity = 3
total_cost = price * quantity  ## Let's calculate the total cost
print(f"The total cost for {quantity} books is ${total_cost:.2f}.")

Saída:

The total cost for 3 books is $59.97.

Usamos o operador * para multiplicar price e quantity. O .2f na f-string formata o número para duas casas decimais. O símbolo # inicia um comentário. Comentários são notas para humanos que o Python ignora.

Sinta-se à vontade para tentar seus próprios cálculos! Você pode redefinir variáveis com novos valores e ver o que acontece.

Trabalhando com Textos (Strings)

Nesta etapa, você aprenderá sobre strings, que são usadas para representar texto em Python.

Vamos criar uma variável de string no interpretador Python. As strings são sempre cercadas por aspas simples (') ou duplas (").

name = "Alice"
print(f"Hello, {name}!")
type(name)

Saída:

Hello, Alice!
<class 'str'>

O tipo de dado str representa uma string no Python.

As strings podem ser combinadas ou manipuladas de várias maneiras. Vamos tentar algumas operações comuns.

## Joining two strings together (concatenation)
first_name = "John"
last_name = "Doe"
full_name = first_name + " " + last_name
print(full_name)

Saída:

John Doe
## Repeating a string
cheer = "Go! " * 3
print(cheer)

Saída:

Go! Go! Go!
## Finding the length of a string
print(len(full_name))

Saída:

8
## Accessing individual characters
print(full_name[0])  ## Get the first character
print(full_name[-1]) ## Get the last character

Saída:

J
e

Importante: O Python começa a contar do 0. Portanto, o primeiro caractere está no índice 0. O índice -1 é um atalho prático para o último caractere.

As strings no Python são imutáveis, o que significa que não podem ser alteradas após serem criadas. Você não pode mudar um único caractere em uma string. No entanto, você pode criar novas strings a partir de uma existente.

message = "Hello World"
uppercase_message = message.upper()
print(uppercase_message)

Saída:

HELLO WORLD
lowercase_message = message.lower()
print(lowercase_message)

Saída:

hello world

Os métodos .upper() e .lower() criam novas strings. A variável message original permanece inalterada.

Verdadeiro ou Falso? (Booleanos)

Nesta etapa, você aprenderá sobre valores booleanos, que só podem ser True (Verdadeiro) ou False (Falso). Eles são essenciais para a tomada de decisões em seu código.

Vamos criar algumas variáveis booleanas. Note que True e False começam com letra maiúscula em Python.

is_learning = True
is_finished = False
print(f"Are we learning Python? {is_learning}")
type(is_learning)

Saída:

Are we learning Python? True
<class 'bool'>

O tipo de dado bool representa valores booleanos.

Operadores de comparação são usados para comparar dois valores e sempre resultam em um booleano (True ou False).

x = 5
y = 10
print(x < y)   ## Is x less than y?
print(x == y)  ## Is x equal to y?
print(x != y)  ## Is x not equal to y?

Saída:

True
False
True

Aqui estão os operadores de comparação comuns: == (igual a), != (diferente de), < (menor que), > (maior que), <= (menor ou igual a), >= (maior ou igual a).

Você também pode comparar strings. O Python as compara em ordem alfabética.

name1 = "Alice"
name2 = "Bob"
print(name1 < name2)  ## "Alice" comes before "Bob" alphabetically

Saída:

True

Operadores booleanos (and, or, not) são usados para combinar expressões booleanas.

a = True
b = False
print(a and b)  ## True only if both a AND b are True
print(a or b)   ## True if either a OR b (or both) are True
print(not a)    ## The opposite of a

Saída:

False
True
False

Esses operadores ajudam você a criar condições mais complexas para seus programas.

Convertendo Entre Tipos de Dados

Às vezes, você precisa converter um valor de um tipo de dado para outro. Isso é chamado de conversão de tipo ou "casting".

Vamos converter uma string em um número. Isso é muito comum quando você recebe dados de um usuário, pois a entrada é sempre lida como uma string.

age_string = "25"
age_number = int(age_string) ## Convert string to integer
print(age_number + 5)

Saída:

30
price_string = "1.99"
price_float = float(price_string) ## Convert string to float
print(price_float * 2)

Saída:

3.98

Usamos int() para converter para um inteiro e float() para converter para um ponto flutuante. Tenha cuidado! Se você tentar converter uma string que não se parece com um número (por exemplo, int("hello")), o Python mostrará um erro.

Você também pode converter números em strings usando a função str().

count = 50
count_string = str(count)
print("The count is " + count_string)

Saída:

The count is 50

Finalmente, você pode converter valores para booleanos usando bool(). As regras são simples:

  • 0, strings vazias ("") e alguns objetos vazios especiais são False.
  • Quase todo o resto é True (qualquer número diferente de zero, qualquer string não vazia).
print(bool(100))      ## Non-zero number
print(bool(0))        ## Zero
print(bool("Hello"))  ## Non-empty string
print(bool(""))       ## Empty string

Saída:

True
False
True
False

A conversão de tipo é uma ferramenta poderosa para fazer diferentes tipos de dados trabalharem juntos.

Juntando Tudo

Nesta etapa final, vamos escrever um pequeno programa que utiliza tudo o que aprendemos.

Mude para a aba WebIDE na VM do LabEx. O WebIDE é um editor de código online onde você pode escrever e salvar seus scripts Python.

WebIDE online code editor

Para informações mais detalhadas sobre a interface do WebIDE, consulte a documentação do WebIDE da VM LabEx.

Crie um novo arquivo chamado user_info.py no diretório ~/project com este comando:

touch ~/project/user_info.py

Clique no novo arquivo no explorador de arquivos à esquerda para abri-lo no editor.

Copie e cole o seguinte código no arquivo:

## A simple program to practice data types

## Get user input (input is always a string)
name = input("Enter your name: ")
age_str = input("Enter your age: ")

## Convert age to an integer
age = int(age_str)

## Perform a simple calculation
years_to_100 = 100 - age
is_adult = age >= 18

## Create an output message using an f-string
output = f"""
--- User Information ---
Hello, {name}!
You are {age} years old.
You will be 100 years old in {years_to_100} years.
Are you an adult? {is_adult}
--- End of Report ---
"""

## Print the final result
print(output)

Este script usa a função input() para solicitar um nome e uma idade. O input() sempre nos fornece a entrada do usuário como uma string, e é por isso que precisamos converter a idade em um número usando int(). O script então cria uma f-string de várias linhas para a saída, usando aspas triplas ("""). Esta é uma maneira elegante de formatar texto que abrange várias linhas. Por fim, ele realiza alguns cálculos e imprime o resumo formatado.

Salve o arquivo (ele deve salvar automaticamente) e execute-o no terminal com este comando:

python ~/project/user_info.py

O programa solicitará seu nome e idade. Depois que você os fornecer, ele imprimirá o resumo.

Enter your name: Alice
Enter your age: 25

--- User Information ---
Hello, Alice!
You are 25 years old.
You will be 100 years old in 75 years.
Are you an adult? True
--- End of Report ---
Program output example

Sinta-se à vontade para executar o script várias vezes com entradas diferentes para ver como a saída muda!

Resumo

Parabéns por concluir este laboratório! Você deu um grande primeiro passo no mundo da programação em Python.

Neste laboratório, você aprendeu sobre os blocos de construção fundamentais do Python:

  • Tipos Numéricos: Você trabalhou com inteiros (int) para números inteiros e floats (float) para números decimais.
  • Strings (str): Você aprendeu como criar e manipular texto.
  • Booleanos (bool): Você explorou os valores True e False e os usou para comparações.
  • Operadores: Você usou operadores aritméticos (*), de comparação (==, <) e booleanos (and, or).
  • Conversão de Tipo: Você praticou a conversão entre diferentes tipos de dados, como transformar uma string em um número.

Esses conceitos são a base para tudo o que você fará em Python. Continue praticando e não tenha medo de experimentar no interpretador Python — é uma das melhores maneiras de aprender. Bom trabalho e feliz programação!