Introdução ao Python

Aprenda os fundamentos da programação em Python

Visão geral

O curso de Introdução ao Python é projetado para iniciantes que desejam aprender a programar e desenvolver suas habilidades de resolução de problemas. Neste curso, você aprenderá os conceitos básicos da linguagem de programação Python, incluindo sintaxe, estruturas de controle, funções, listas e manipulação de arquivos. Ao final do curso, você será capaz de escrever seus próprios programas Python e estará preparado para avançar para cursos mais avançados.

Introdução à sintaxe do Python

Introdução à sintaxe do Python

Sintaxe do Python

A sintaxe é uma parte fundamental da programação em Python. Ela define as regras e convenções que devem ser seguidas ao escrever um código em Python. Dominar a sintaxe do Python é essencial para construir programas eficientes e sem erros.

Neste tópico, iremos explorar os principais elementos da sintaxe do Python, incluindo identação, comentários, declaração de variáveis, estruturas de controle, funções e importação de bibliotecas.

Identação

Ao contrário de outras linguagens de programação, que utilizam chaves ou palavras-chave especiais para delimitar blocos de código, o Python utiliza a identação (indentação) para definir a estrutura do código. A identação é o espaçamento ou recuo que é aplicado ao início de cada linha de código em um bloco.

Por exemplo, para definir um bloco de código dentro de uma estrutura de controle, como um loop ou condicional, é necessário adicionar uma identação para indicar que aquele bloco faz parte da estrutura.

for i in range(5):
    print(i)

Observe que o bloco de código que deve ser executado no loop for está indentado em relação à linha que contém a estrutura for. A identação é geralmente feita com quatro espaços ou um tab.

Comentários

Comentários são trechos de texto que são ignorados pelo interpretador Python, mas que ajudam os programadores a documentar e entender o código. Comentários são muito úteis para adicionar informações relevantes, explicar o funcionamento de um trecho de código ou desabilitar temporariamente uma parte do programa.

Em Python, existem duas maneiras de adicionar comentários: utilizando o caractere # para comentários de linha única, ou utilizando as aspas triplas """ para comentários de múltiplas linhas.

# Este é um comentário de linha única

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

Certifique-se de utilizar comentários de forma adequada para tornar o código mais legível e compreensível.

Declaração de variáveis

Variáveis são utilizadas para armazenar valores ou referências a objetos em Python. Ao declarar uma variável em Python, não é necessário especificar o tipo de dado que ela irá armazenar, pois o Python é uma linguagem de tipagem dinâmica.

Para declarar uma variável em Python, basta atribuir um valor a ela utilizando o operador de atribuição =.

nome = "João"
idade = 25
pi = 3.14

Neste exemplo, estamos declarando três variáveis: nome, idade e pi.

Estruturas de controle

Em Python, as estruturas de controle são utilizadas para controlar o fluxo de execução do programa. As principais estruturas de controle em Python são:

  • Condicional if: utilizada para executar um bloco de código caso uma condição seja verdadeira. Pode ser acompanhada pelas estruturas elif (abusivo de 'else if') e else.
if x > 0:
    print("x é positivo")
elif x == 0:
    print("x é zero")
else:
    print("x é negativo")
  • Loop for: utilizado para iterar sobre uma sequência de elementos, como uma lista ou string.
nomes = ["João", "Maria", "José"]

for nome in nomes:
    print(nome)
  • Loop while: utilizado para executar um bloco de código enquanto uma condição for verdadeira.
i = 0

while i < 5:
    print(i)
    i += 1

Funções

Funções são blocos de código que podem ser chamados e executados várias vezes em um programa. Elas são utilizadas para organizar o código, evitar repetição e facilitar a resolução de problemas.

Em Python, uma função é definida utilizando a palavra-chave def, seguida pelo nome da função e parênteses que podem conter argumentos. O corpo da função é indentado e contém o código que será executado quando a função for chamada.

def saudacao(nome):
    print("Olá, " + nome + "!")

saudacao("Maria")

Neste exemplo, estamos criando uma função chamada saudacao que recebe um argumento nome e imprime uma mensagem de saudação com o nome fornecido.

Importação de bibliotecas

Python possui uma ampla variedade de bibliotecas e módulos que fornecem funcionalidades adicionais para o desenvolvimento de programas. Para utilizar uma biblioteca em Python, é necessário importá-la no início do código.

import math

raiz_quadrada = math.sqrt(16)
print(raiz_quadrada)

Neste exemplo, estamos importando o módulo math para calcular a raiz quadrada de um número utilizando a função sqrt.

Funções, Classes e objetos

Funções, Classes e objetos

As funções, classes e objetos são conceitos fundamentais na programação orientada a objetos em Python. Eles nos permitem organizar e estruturar nosso código de maneira mais eficiente, facilitando a reutilização, a manutenção e a escala.

Funções

Uma função é um bloco de código que pode executar uma tarefa específica. Ela recebe um conjunto de entradas, chamadas de parâmetros, realiza um processamento e retorna um resultado.

Em Python, podemos criar funções utilizando a palavra-chave def seguida pelo nome da função e seus parâmetros, e finalizando com :. O bloco de código associado à função é delimitado por indentação.

Aqui está um exemplo de uma função simples que recebe dois números como entrada e retorna a soma deles:

def soma(a, b):
    return a + b

Para chamar essa função e obter o resultado, basta utilizar o nome da função seguido pelos parâmetros desejados entre parênteses:

resultado = soma(2, 3)
print(resultado)

Neste caso, o valor de resultado será 5.

Classes e Objetos

Uma classe é uma estrutura de programação que serve como um modelo para criar objetos. Ela define a estrutura e o comportamento de um tipo de objeto, sendo composta por atributos e métodos.

Os atributos são as características do objeto, enquanto os métodos são as ações que o objeto pode executar.

Para criar uma classe em Python, utilizamos a palavra-chave class seguida pelo nome da classe, que geralmente é escrito em letra maiúscula. Dentro da classe, podemos definir os atributos e os métodos.

Aqui está um exemplo de uma classe chamada Pessoa que possui um atributo nome e um método apresentar:

class Pessoa:
    def __init__(self, nome):
        self.nome = nome
    
    def apresentar(self):
        print(f"Olá, meu nome é {self.nome}.")

O método __init__ é um método especial utilizado para inicializar os atributos da classe. O parâmetro self é uma referência ao próprio objeto, permitindo o acesso aos atributos e aos métodos dentro da classe.

Para criar um objeto a partir de uma classe, utilizamos o nome da classe seguido pelos parâmetros desejados entre parênteses, caso haja algum:

pessoa = Pessoa("João")
pessoa.apresentar()

Neste caso, o objeto pessoa será criado com o atributo nome igual a "João" e, ao chamar o método apresentar, será exibida a mensagem "Olá, meu nome é João.".

Estruturas de dados e tipos de variáveis e laços de repetição

Estruturas de dados e tipos de variáveis e laços de repetição

Nesta seção, vamos explorar as estruturas de dados e os tipos de variáveis mais comuns em Python, bem como os laços de repetição que nos permitem executar tarefas repetidamente.

Estruturas de dados

As estruturas de dados nos permitem organizar e armazenar informações de maneiras específicas. Em Python, temos diversos tipos de estruturas de dados que nos ajudam a lidar com diferentes situações. Alguns exemplos comuns incluem:

Listas

Uma lista é uma coleção ordenada de elementos que podem ser modificados. Em Python, ela é representada por colchetes [] e pode conter elementos de diferentes tipos. As listas são mutáveis, o que significa que podemos adicionar, remover ou modificar elementos facilmente.

frutas = ["maçã", "banana", "laranja"]

Tuplas

Uma tupla é semelhante a uma lista, mas é imutável, ou seja, não pode ser modificada após ser criada. Em Python, uma tupla é representada por parênteses () e pode conter elementos de tipos diferentes.

dados_pessoais = ("João", 25, "São Paulo")

Conjuntos

Um conjunto armazena uma coleção não ordenada de elementos únicos. Em Python, um conjunto é representado por chaves {}. Como não é ordenado, a posição dos elementos não é relevante. Os conjuntos são úteis, por exemplo, quando precisamos verificar a existência de um elemento em uma coleção de forma eficiente.

numeros_primos = {2, 3, 5, 7, 11, 13}

Dicionários

Um dicionário é uma estrutura de dados que armazena pares chave-valor, onde cada chave é única. Em Python, um dicionário é representado por chaves {} e os pares chave-valor são separados por dois pontos :. Os dicionários são úteis para armazenar informações associadas a uma determinada chave.

contatos = {"João": "joao@example.com", "Maria": "maria@example.com"}

Tipos de variáveis

Em Python, as variáveis são definidas dinamicamente, o que significa que não precisamos especificar o tipo de uma variável ao declará-la. O tipo de uma variável é determinado automaticamente pelo valor atribuído a ela. Alguns dos tipos de variáveis mais comuns em Python incluem:

Números inteiros

Variáveis do tipo inteiro representam números inteiros. Podemos realizar operações matemáticas com essas variáveis, como adição, subtração, multiplicação e divisão.

idade = 30

Números de ponto flutuante

Variáveis do tipo ponto flutuante representam números reais. Elas são usadas para lidar com valores decimais e também permitem operações matemáticas.

altura = 1.75

Texto (strings)

Variáveis do tipo string representam sequências de caracteres. Elas são usadas para armazenar texto e podem ser manipuladas de várias maneiras, como concatenação, extração de substrings e substituição.

nome = "Ana"

Booleanos

Variáveis booleanas representam valores lógicos Verdadeiro (True) ou Falso (False). Elas são frequentemente usadas em expressões condicionais para controlar o fluxo do programa.

temperatura_alta = True

Laços de repetição

Os laços de repetição (ou loops) nos permitem executar um bloco de código várias vezes, de acordo com uma condição específica. Existem dois tipos principais de laços de repetição em Python:

Laço for

O laço for é usado quando sabemos exatamente quantas vezes queremos executar um bloco de código. Podemos iterar sobre uma sequência (como uma lista, uma tupla, um conjunto ou uma string) ou gerar uma sequência numérica usando as funções range() ou enumerate().

for fruta in frutas:
    print(fruta)

Laço while

O laço while é usado quando queremos repetir um bloco de código até que uma determinada condição seja falsa. Devemos ter cuidado para evitar que o laço entre em um estado de "loop infinito", onde a condição nunca se torne falsa.

contador = 0
while contador < 10:
    print(contador)
    contador += 1

Com as estruturas de dados, tipos de variáveis e laços de repetição, podemos escrever programas mais dinâmicos e poderosos em Python. Agora que você está familiarizado com esses conceitos, vamos praticar seu uso em exercícios práticos.

Exercícios Práticos

Vamos colocar seus conhecimentos em prática

Exercícios Práticos

Nesta lição, colocaremos a teoria em prática por meio de atividades práticas. Clique nos itens abaixo para conferir cada exercício e desenvolver habilidades práticas que o ajudarão a ter sucesso na disciplina.

Crie um programa em Python para calcular o valor do Imposto de Renda de uma pessoa com base no salário informado. O programa deve solicitar o valor do salário e, então, calcular o imposto de acordo com as seguintes faixas de renda: - Até R$ 1.903,98: isento de imposto; - De R$ 1.903,99 até R$ 2.826,65: alíquota de 7,5%; - De R$ 2.826,66 até R$ 3.751,05: alíquota de 15%; - De R$ 3.751,06 até R$ 4.664,68: alíquota de 22,5%; - Acima de R$ 4.664,68: alíquota de 27,5%. O programa deve exibir o valor do imposto a ser pago de acordo com o salário informado.

Crie um programa em Python que receba uma frase como entrada do usuário e conte quantas vezes cada letra aparece nessa frase. O programa deve ignorar letras maiúsculas e minúsculas, ou seja, as letras 'A' e 'a' devem ser consideradas a mesma letra. Ao final, o programa deve exibir o total de ocorrências de cada letra.

Crie um programa em Python para gerenciar o cadastro de clientes de uma empresa. O programa deve permitir as seguintes funcionalidades: 1. Cadastrar um novo cliente (nome e e-mail); 2. Listar todos os clientes cadastrados; 3. Pesquisar um cliente pelo nome; 4. Remover um cliente pelo nome. Utilize classes e objetos para implementar essa funcionalidade.

Artigos

Explore estes artigos para obter uma compreensão mais profunda do material do curso

Artigos

Artigos

Esses artigos selecionados fornecem informações e conhecimentos valiosos para aprimorar sua experiência de aprendizado.

Guia Python para Iniciantes

  • Um guia completo para iniciantes em Python.
  • Leia mais

Tutorial Python: Aprenda o básico da linguagem

  • O tutorial oficial do Python para aprender os conceitos básicos da linguagem.
  • Leia mais

Python Para Zumbis - Curso Gratuito

  • Um curso gratuito de Python para iniciantes.
  • Leia mais

Documentação Oficial do Python

  • A documentação oficial do Python, contendo informações detalhadas sobre a linguagem.
  • Leia mais

Introdução à Programação com Python

  • Um curso de introdução à programação utilizando Python.
  • Leia mais

Pense em Python: Como pensar como um cientista da computação

  • Um livro que ensina a pensar como um cientista da computação usando Python.
  • Leia mais

Python Brasil

  • O site oficial da comunidade Python no Brasil, com diversos recursos e informações.
  • Leia mais

Python Fluente: Programação Clara, Concisa e Eficaz

  • Um livro que explora recursos avançados da linguagem Python.
  • Leia mais

Curso de Python para Iniciantes

  • Um curso online de Python para iniciantes na plataforma Udemy.
  • Leia mais

Resumo

Vamos revisar o que acabamos de ver até agora

Resumo

  • Ao longo deste curso de Introdução ao Python, você aprendeu sobre a sintaxe básica dessa linguagem de programação. Exploramos os principais conceitos relacionados à estrutura de dados e tipos de variáveis, bem como os diferentes tipos de laços de repetição disponíveis. Além disso, aprofundamos nossos conhecimentos em relação a funções, que são blocos de código reutilizáveis, e também estudamos o conceito de classes e objetos, fundamentais para a programação orientada a objetos. Com esse conhecimento adquirido, você poderá começar a desenvolver suas próprias aplicações utilizando a linguagem Python, seja para automatizar tarefas, criar programas interativos ou desenvolver projetos mais complexos.
  • Chegamos ao fim deste curso de Introdução ao Python, onde você teve a oportunidade de conhecer e se familiarizar com a sintaxe básica do Python. Durante o curso, exploramos as estruturas de dados e tipos de variáveis mais comuns e como utilizá-las em conjunto com os laços de repetição para criar programas mais eficientes. Além disso, você aprendeu sobre funções, que são blocos de código reutilizáveis, e também teve uma introdução à programação orientada a objetos, conhecendo classes e objetos. Com todo esse conhecimento, você estará preparado para dar os próximos passos na sua jornada de aprendizado em Python, seja aprofundando-se em temas mais avançados ou colocando em prática seus conhecimentos através do desenvolvimento de projetos.
  • Parabéns! Você concluiu o curso de Introdução ao Python. Durante este curso, você aprendeu sobre a sintaxe básica da linguagem, incluindo como declarar variáveis, utilizar operadores e estruturar seu código em funções e classes. Além disso, você teve a oportunidade de explorar diferentes estruturas de dados, como listas, dicionários e conjuntos, bem como os laços de repetição for e while. Com esse conhecimento, você pode agora começar a desenvolver suas próprias aplicações em Python, automatizar tarefas repetitivas, manipular e analisar dados, e muito mais. Parabéns mais uma vez e continue avançando em sua jornada de aprendizado em programação!

Conclusão

Parabéns!

Parabéns por concluir este curso! Você deu um passo importante para liberar todo o seu potencial. Concluir este curso não é apenas adquirir conhecimento; trata-se de colocar esse conhecimento em prática e causar um impacto positivo no mundo ao seu redor.