Principais Conceitos de Python

Finalmente, no artigo Principais Conceitos de Python, apresentamos os principais conceitos de Python, abrangendo desde a criação de funções até a interação com APIs e bancos de dados. Então, com sua sintaxe clara e ecossistema robusto, Python se destaca como uma linguagem versátil e popular, sendo amplamente utilizada em diversas áreas da computação. Assim, ao dominar esses conceitos fundamentais, você estará preparado para explorar todo o potencial que Python oferece, permitindo que desenvolva soluções criativas e inovadoras para os desafios da programação. Continue praticando, aprendendo e aprimorando suas habilidades em Python, pois essa linguagem continuará a inspirar e impulsionar sua jornada no mundo da programação.

Python é uma linguagem de programação poderosa e versátil, conhecida por sua sintaxe simples e legibilidade. Assim, seu amplo conjunto de bibliotecas e frameworks torna Python uma das escolhas mais populares para desenvolvimento de aplicações web, análise de dados, automação, inteligência artificial e muito mais. Então, veremos os Principais Conceitos de Python aqui.

Desse modo, exploraremos os principais conceitos de Python, desde a criação de funções e o trabalho com estruturas de controle até a interação com APIs e bancos de dados. Portanto, seja você um iniciante ou um programador experiente, embarque nesta jornada para desvendar os fundamentos e a magia por trás dessa linguagem, e descubra como Python pode impulsionar suas habilidades de programação e permitir que você crie soluções inovadoras e eficientes.

O que é Python?

Então, a linguagem Python tem esse nome em homenagem ao grupo de comédia britânico Monty Python: Ela é uma linguagem de programação de fácil aprendizado e grande versatilidade. Assim, com uma sintaxe clara e intuitiva, é popular tanto entre iniciantes quanto entre profissionais experientes. Desse modo, sua comunidade ativa e a extensa coleção de bibliotecas disponíveis no Python Package Index (PyPI) permitem o desenvolvimento ágil e eficiente de uma ampla gama de aplicações, tornando-a uma das linguagens mais populares e poderosas do mercado.

Configurando o Ambiente de Desenvolvimento

Configurar o ambiente de desenvolvimento é o primeiro passo essencial para começar a programar em Python. Para isso, é necessário instalar o Python em seu sistema operacional. A linguagem Python é compatível com várias plataformas, como Windows, macOS e Linux.

Recomendamos utilizar ambientes virtuais, que criam ambientes isolados permitindo a instalação de pacotes e dependências específicas para cada projeto, evitando conflitos entre diferentes projetos. Para isso, você pode usar ferramentas como “virtualenv” ou “venv” para criar e gerenciar esses ambientes virtuais. Além disso, é comum utilizar o Docker para criar os ambientes de desenvolvimento.

Além disso, você pode usar ambientes de desenvolvimento integrados (IDEs) ou editores de código específicos para Python, como o Visual Studio Code, PyCharm ou Atom, que oferecem recursos avançados para facilitar a escrita de código, depuração e gerenciamento de projetos.

Primeiros Passos – Hello, World!

Para começar o mais natural é fazer uma função de Alô Mundo. No Python basta uma linha para tal, em seu arquivo .py, como o exemplo abaixo:

print("Hello, World!")

Variáveis e Tipos de Dados em Python

As variáveis são utilizadas para armazenar dados em memória. Diferentemente de algumas outras linguagens de programação, em Python não é necessário declarar explicitamente o tipo da variável. O tipo de dados é determinado automaticamente com base no valor atribuído a ela .

Existem vários tipos de dados em Python, sendo os principais:

Números: Python suporta diferentes tipos de números, como inteiros (int) e números de ponto flutuante (float). Por exemplo:

idade = 30
altura = 1.75

Strings (cadeias de caracteres): sequências de caracteres delimitadas por aspas simples ou duplas. Por exemplo:

nome = "João" 
mensagem = 'Olá, mundo!'

Booleanos: Representam valores verdadeiros ou falsos (True ou False), frequentemente utilizados em estruturas condicionais e loops.

verdadeiro = True 
falso = False

Listas: coleções ordenadas de elementos, podendo conter valores de diferentes tipos, definidas utilizando colchetes.

numeros = [1, 2, 3, 4, 5] 
nomes = ["Alice", "Bob", "Carlos"]

Tuplas: estruturas semelhantes às listas, mas são imutáveis, ou seja, seus elementos não podem ser modificados após a criação. Elas são definidas utilizando parênteses.

coordenadas = (10, 20) 
cores_rgb = (255, 128, 0)

Dicionários: Representam mapeamentos de chaves para valores. Cada elemento do dicionário consiste em um par chave-valor. São definidos utilizando chaves. Por exemplo:

pessoa = {"nome": "Ana", "idade": 25, "cidade": "São Paulo"}

Estruturas de Controle de Fluxo

Os programadores utilizam as estruturas de controle de fluxo para controlar o fluxo de execução de um programa em Python, permitindo que realizem determinadas ações condicionalmente ou repetidamente.

Estrutura Condicional – if/else

A estrutura condicional “if” executa um bloco de código somente se uma determinada condição for verdadeira, e caso a condição seja falsa, o bloco de código associado ao “else” é executado.

idade = 18
if idade >= 18:
    print("Você é maior de idade.")
else:
    print("Você é menor de idade.")

Estrutura de Repetição – for

O laço for é utilizado para iterar em uma sequência (como uma lista, tupla, dicionário, etc.) e executar um bloco de código para cada elemento.

numeros = [1, 2, 3, 4, 5]
for numero in numeros:
    print(numero)

Estrutura de Repetição – while

O laço while é usado para repetir um bloco de código enquanto uma determinada condição for verdadeira.

contador = 1
while contador <= 5:
    print("Contagem:", contador)
    contador += 1

Estrutura Condicional – elif

O elif é uma abreviação de “else if” e permite verificar múltiplas condições em uma estrutura condicional. Se a condição anterior não for verdadeira, o Python verifica a próxima condição.

nota = 85
if nota >= 90:
    print("Nota A")
elif nota >= 80:
    print("Nota B")
elif nota >= 70:
    print("Nota C")
else:
    print("Nota D")

Funções em Python

As funções são blocos de código reutilizáveis que executam uma tarefa específica. Elas permitem dividir o código em partes menores e mais gerenciáveis, facilitando a organização e a manutenção do programa. Em Python, podemos criar nossas próprias funções utilizando a palavra-chave def, seguida pelo nome da função e seus parâmetros entre parênteses.

def saudacao():
    print("Olá! Bem-vindo(a) ao nosso programa.")

Para executar a função, basta chamá-la pelo nome, seguido por parênteses:

saudacao()

Parâmetros e Argumentos

As funções podem receber parâmetros, que são valores que a função espera receber quando é chamada. Os parâmetros são colocados entre os parênteses na definição da função.

def saudacao(nome):
    print("Olá,", nome, "! Bem-vindo(a) ao nosso programa.")

saudacao("Anselme") 
# O resultado é "Olá, Anselme! Bem-vindo(a) ao nosso programa."

Retorno de Valores

Além de executar tarefas, as funções em Python podem retornar valores usando a palavra-chave return.

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

resultado_soma = soma(3, 5)
print(resultado_soma)  # Isso imprimirá "8" no console

Trabalhando com APIs em Python

Então, uma API é um conjunto de regras e protocolos que permite que diferentes sistemas se comuniquem e interajam entre si: é muito comum consumir APIs através de aplicações Python. Além disso, para interagir com APIs em Python, é normal utilizar bibliotecas como requests, http.client, etc., que facilitam o envio de requisições HTTP para os servidores que hospedam as APIs. Assim, com elas é possível realizar requisições GET, POST, PUT, DELETE, entre outras.

Desse modo, veja um exemplo a seguir que utiliza o OpenWeatherMap para obter informações climáticas. Para conhecer outras APIs, veja o artigo 7 APIs públicas, gratuitas e de qualidade aqui no blog.

import requests

def obter_previsao_tempo(cidade):
    url = f"http://api.openweathermap.org/data/2.5/weather?q={cidade}&appid=SEU_API_KEY"
    response = requests.get(url)

    if response.status_code == 200:
        dados = response.json()
        temperatura = dados["main"]["temp"]
        descricao = dados["weather"][0]["description"]
        return f"A temperatura em {cidade} é de {temperatura} graus Celsius. {descricao}."
    else:
        return "Não foi possível obter a previsão do tempo."

cidade = "Sao Paulo"
print(obter_previsao_tempo(cidade))

Interagindo com banco de dados

A interação com banco de dados é uma parte fundamental no desenvolvimento de muitas aplicações. Python oferece várias bibliotecas que facilitam a comunicação e manipulação de bancos de dados relacionais e não relacionais.

# ###### Exemplo de interação do Python com o SQLite
import sqlite3

# Conectando ao banco de dados (cria o arquivo do banco se não existir)
conexao = sqlite3.connect("exemplo.db")

# Criando uma tabela
cursor = conexao.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS usuarios (id INTEGER PRIMARY KEY, nome TEXT, idade INTEGER)")

# Inserindo dados na tabela
cursor.execute("INSERT INTO usuarios (nome, idade) VALUES ('João', 30)")
cursor.execute("INSERT INTO usuarios (nome, idade) VALUES ('Maria', 25)")

# Salva as alterações e fecha a conexão
conexao.commit()
conexao.close()
# ###### Exemplo de interação do Python com o MySQL 
import mysql.connector

# Conectando ao banco de dados
conexao = mysql.connector.connect(
    host="localhost",
    user="seu_usuario",
    password="sua_senha",
    database="seu_banco_de_dados"
)

# Criando uma tabela e inserindo dados
cursor = conexao.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS clientes (id INT AUTO_INCREMENT PRIMARY KEY, nome VARCHAR(255), email VARCHAR(255))")
cursor.execute("INSERT INTO clientes (nome, email) VALUES ('Alice', '[email protected]')")
cursor.execute("INSERT INTO clientes (nome, email) VALUES ('Bob', '[email protected]')")

# Salvando as alterações e fechando a conexão
conexao.commit()
conexao.close()
# ###### Exemplo de interação do Python com o MongoDB
import pymongo

# Conectando ao servidor do MongoDB (por padrão, rodando localmente na porta 27017)
cliente = pymongo.MongoClient("mongodb://localhost:27017/")

# Criando ou acessando um banco de dados (no caso, o banco de dados "exemplo_db")
banco_de_dados = cliente["exemplo_db"]

# Criando ou acessando uma coleção (no caso, a coleção "clientes")
colecao = banco_de_dados["clientes"]

# Inserindo um documento na coleção
cliente1 = {"nome": "Alice", "idade": 30, "email": "[email protected]"}
colecao.insert_one(cliente1)

# Inserindo múltiplos documentos na coleção
clientes = [
    {"nome": "Bob", "idade": 25, "email": "[email protected]"},
    {"nome": "Carol", "idade": 22, "email": "[email protected]"}
]
colecao.insert_many(clientes)

# Consultando documentos na coleção
consulta = colecao.find({"idade": {"$gt": 25}})
for cliente in consulta:
    print(cliente)

# Fechando a conexão com o servidor MongoDB
cliente.close()

Conclusão de Principais Conceitos de Python

Finalmente, no artigo Principais Conceitos de Python, apresentamos os principais conceitos de Python, abrangendo desde a criação de funções até a interação com APIs e bancos de dados. Então, com sua sintaxe clara e ecossistema robusto, Python se destaca como uma linguagem versátil e popular, sendo amplamente utilizada em diversas áreas da computação. Assim, ao dominar esses conceitos fundamentais, você estará preparado para explorar todo o potencial que Python oferece, permitindo que desenvolva soluções criativas e inovadoras para os desafios da programação. Continue praticando, aprendendo e aprimorando suas habilidades em Python, pois essa linguagem continuará a inspirar e impulsionar sua jornada no mundo da programação.


Thiago Anselme
Thiago Anselme - Gerente de TI - Arquiteto de Soluções

Ele atua/atuou como Dev Full Stack C# .NET / Angular / Kubernetes e afins. Ele possui certificações Microsoft MCTS (6x), MCPD em Web, ITIL v3 e CKAD (Kubernetes) . Thiago é apaixonado por tecnologia, entusiasta de TI desde a infância bem como amante de aprendizado contínuo.

Deixe um comentário