Básicos de Python

Todos precisamos começar em algum lugar, então que tal começar por aqui. Este guia cobre os fundamentos básicos do Python, incluindo operadores, tipos de dados, variáveis e funções principais.

Visão Geral dos Fundamentos do Python

Os fundamentos básicos do Python que todo iniciante deve saber:

  • Variáveis e tipos básicos
  • Operadores e expressões
  • Strings e métodos comuns
  • Listas, tuplas e dicionários
  • Fluxo de controle básico (if, for, while)
  • Funções simples

Operadores Matemáticos

De maior para menor precedência:

OperadoresOperaçãoExemplo
**Exponenciação2 ** 3 = 8
%Módulo/Resto22 % 8 = 6
//Divisão inteira22 // 8 = 2
/Divisão22 / 8 = 2.75
*Multiplicação3 * 3 = 9
-Subtração5 - 2 = 3
+Adição2 + 2 = 4

Exemplos de expressões:

# A multiplicação tem precedência maior que a adição
# Então isso é avaliado como: 2 + (3 * 6) = 2 + 18 = 20
2 + 3 * 6
20
# Parênteses anulam a precedência dos operadores
# Isso é avaliado como: 5 * 6 = 30
(2 + 3) * 6
30
2 ** 8
256
23 // 7
3
23 % 7
2
(5 - 1) * ((7 + 1) / (3 - 1))
16.0
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

Qual é o resultado desta expressão Python?
4 + 2 * 3
A. 10
B. 18
C. 12
D. 20

Operadores de Atribuição Aumentada

OperadorEquivalente
var += 1var = var + 1
var -= 1var = var - 1
var *= 1var = var * 1
var /= 1var = var / 1
var //= 1var = var // 1
var %= 1var = var % 1
var **= 1var = var ** 1

Exemplos:

# Atribuição aumentada: equivalente a greeting = greeting + ' world!'
greeting = 'Hello'
greeting += ' world!'
greeting
'Hello world!'
# Incrementa um número em 1
number = 1
number += 1
number
2
# Replica elementos da lista: equivalente a my_list = my_list * 3
my_list = ['item']
my_list *= 3
my_list
['item', 'item', 'item']
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

Qual é o valor de x após executar este código?
x = 5
x += 3
A. 3
B. 8
C. 5
D. 15

Operador Walrus

O Operador Walrus permite a atribuição de variáveis dentro de uma expressão, retornando o valor da variável

Exemplo:

# O operador Walrus atribui e retorna o valor em uma única expressão
# my_var recebe "Hello World!" e depois é impresso
print(my_var:="Hello World!")
Hello World!
my_var="Yes"
print(my_var)
Yes
print(my_var:="Hello")
Hello

O Operador Walrus, ou Operador de Expressão de Atribuição, foi introduzido pela primeira vez em 2018 através do PEP 572, e depois lançado oficialmente com o Python 3.8 em outubro de 2019.

Sintaxe Semântica & Exemplos

O PEP 572 fornece a sintaxe, semântica e exemplos para o Operador Walrus.

Tipos de Dados

Compreender os tipos de dados é um dos fundamentos básicos mais importantes do Python. O Python tem nove tipos de dados principais integrados que cobrem quase tudo o que você precisará:

Tipo de DadoExemplosDescrição
Números
int-2, -1, 0, 1, 2, 3, 4, 5Números inteiros
float-1.25, -1.0, -0.5, 0.0, 0.5, 1.0, 1.25Números com pontos decimais
complex2+3j, complex(1, 4)Números com partes real e imaginária
Texto
str'a', 'Hello!', "Python"Texto e caracteres
Booleano
boolTrue, FalseValores Verdadeiro ou Falso
None
NoneTypeNoneRepresenta “nenhum valor” ou “nada”
Coleções
list[1, 2, 3], ['a', 'b', 'c']Coleções ordenadas e mutáveis
dict{'name': 'Alice', 'age': 30}Pares chave-valor
tuple(1, 2, 3), ('a', 'b')Coleções ordenadas e imutáveis
set{1, 2, 3}, {'a', 'b', 'c'}Coleções não ordenadas de itens únicos

Exemplos Rápidos

# Números
age = 25                    # int
price = 19.99              # float
coordinate = 2 + 3j        # complex

# Texto
name = "Alice"             # str

# Booleano
is_student = True          # bool

# None
result = None              # NoneType

# Coleções
scores = [85, 92, 78]      # list
person = {'name': 'Bob', 'age': 30}  # dict
coordinates = (10, 20)     # tuple
unique_ids = {1, 2, 3}     # set

Para um guia abrangente com exemplos visuais e explicações detalhadas sobre quando usar cada tipo, consulte: Tipos de Dados em Python: Um Guia Visual para Iniciantes.

Concatenação e Replicação

Concatenação de strings:

# Concatenação de strings: strings adjacentes são unidas automaticamente
'Alice' 'Bob'
'AliceBob'

Replicação de strings:

# Replicação de string: repete a string múltiplas vezes
'Alice' * 5
'AliceAliceAliceAliceAlice'

Variáveis

Variáveis são uma parte fundamental dos conceitos básicos do Python. Você pode nomear uma variável como quiser, desde que obedeça às seguintes regras:

  1. Pode ser apenas uma palavra.
# ruim
my variable = 'Hello'

# bom
var = 'Hello'
  1. Pode usar apenas letras, números e o caractere sublinhado (_).
# ruim
%$@variable = 'Hello'

# bom
my_var = 'Hello'

# bom
my_var_2 = 'Hello'
  1. Não pode começar com um número.
# isso não funcionará
23_var = 'hello'
  1. Nomes de variáveis que começam com um sublinhado (_) são considerados “não úteis”.
# _spam não deve ser usado novamente no código
_spam = 'Hello'
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

Nos fundamentos do Python, qual dos seguintes é um nome de variável válido?
A. 3value
B. user-name
C. user_name
D. for

Comentários

Comentário em linha:

# Este é um comentário

Comentário de múltiplas linhas:

# Este é um
# comentário de múltiplas linhas

Código com um comentário:

a = 1  # inicialização

Observe os dois espaços antes do comentário.

Docstring de função:

def foo():
    """
    Este é um docstring de função
    Você também pode usar:
    ''' Docstring da Função '''
    """

A Função print()

A função print() é um dos primeiros conceitos básicos do Python que você aprenderá. Ela escreve o valor do(s) argumento(s) que recebe. […] ela lida com múltiplos argumentos, quantidades de ponto flutuante e strings. As strings são impressas sem aspas, e um espaço é inserido entre os itens, para que você possa formatar as coisas de forma agradável:

print('Hello world!')
Hello world!
a = 1
print('Hello world!', a)
Hello world! 1

A palavra-chave end

O argumento de palavra-chave end pode ser usado para evitar a nova linha após a saída, ou terminar a saída com uma string diferente:

# Use o parâmetro end para mudar o que vem depois de cada instrução print
phrase = ['printed', 'with', 'a', 'dash', 'in', 'between']
for word in phrase:
    print(word, end='-')  # Use '-' em vez de nova linha
printed-with-a-dash-in-between-

A palavra-chave sep

A palavra-chave sep especifica como separar os objetos, se houver mais de um:

# Use o parâmetro sep para especificar o separador entre múltiplos argumentos
print('cats', 'dogs', 'mice', sep=',')  # Saída separada por vírgula
cats,dogs,mice

A Função input()

Esta função recebe a entrada do usuário e a converte em uma string:

# input() lê a entrada do usuário e a retorna como uma string
print('What is your name?')   # pergunta o nome
my_name = input()  # Espera o usuário digitar e pressionar Enter
print('Hi, {}'.format(my_name))
What is your name?
Martha
Hi, Martha

input() também pode definir uma mensagem padrão sem usar print():

my_name = input('What is your name? ')  # mensagem padrão
print('Hi, {}'.format(my_name))
What is your name? Martha
Hi, Martha

Também é possível usar strings formatadas para evitar o uso de .format:

# input() pode exibir uma mensagem de prompt diretamente
my_name = input('What is your name? ')  # Prompt e leitura em uma única chamada
print(f'Hi, {my_name}')  # f-string para formatação de string
What is your name? Martha
Hi, Martha
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

Nos fundamentos do Python, que tipo `input()` retorna?
A. int
B. str
C. float
D. Depende da entrada do usuário

A Função len()

Avalia-se como o valor inteiro do número de caracteres em uma string, lista, dicionário, etc.:

# len() retorna o número de caracteres em uma string
len('hello')  # Retorna 5
5
# len() retorna o número de itens em uma lista
len(['cat', 3, 'dog'])  # Retorna 3 (três itens)
3

Teste de Vazio

O teste de vazio de strings, listas, dicionários, etc., não deve usar len, mas sim preferir a avaliação booleana direta.

Exemplo de teste de vazio:

a = [1, 2, 3]

# ruim: verificação len() desnecessária
if len(a) > 0:  # avalia como True
    print("the list is not empty!")
the list is not empty!
# bom: avaliação booleana direta (maneira Pythonica)
if a:  # avalia como True se a lista não estiver vazia
    print("the list is not empty!")
the list is not empty!

As Funções str(), int(), e float()

Essas funções permitem que você altere o tipo de variável. Por exemplo, você pode transformar de um integer ou float para uma string:

# Converter inteiro para string
str(29)  # Retorna '29'
'29'
str(-3.14)
'-3.14'

Ou de uma string para um integer ou float:

# Converter string para inteiro
int('11')  # Retorna 11
11
# Converter string para float
float('3.14')  # Retorna 3.14
3.14
Quiz

Faça login para responder este quiz e acompanhar seu progresso de aprendizagem

Qual é o resultado deste código Python?
result = int('42')
type(result)
A. str
B. float
C. int
D. NoneType