Python: Biblioteca Padrão: Básico (Pt.1)

Última atualização: 2026-09-22

Uma das maiores características do Python é "Batteries Included" — um conjunto completo de bibliotecas padrão vem com cada instalação do Python. Esta lição cobre quatro dos módulos mais comumente usados: random, time, sys e os. Mesmo aprendendo apenas as funções mais populares de cada um, você resolverá muitos problemas do mundo real.


Funções internas relacionadas:exit()

1. random — Números Aleatórios

PYTHON
import random

# Float aleatório [0, 1)
print(random.random())              # 0.3745...

# Inteiro aleatório [a, b] (inclusive)
print(random.randint(1, 10))        # Inteiro aleatório entre 1 e 10

# Escolha aleatória
fruits = ["maçã", "banana", "laranja", "uva"]
print(random.choice(fruits))        # Escolhe um aleatoriamente

# Amostra aleatória (sem reposição)
print(random.sample(fruits, 2))     # Escolhe 2 aleatoriamente

# Embaralhar ordem
cards = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
random.shuffle(cards)
print(cards)                        # Ordem é embaralhada

▶ Exemplo: Programa de Sorteio (Dificuldade ⭐)

▶ Experimente

Saída:

TEXT 📖 Somente leitura
# Executed successfully


2. time — Manipulação de Tempo

PYTHON
import time

# Timestamp atual (segundos desde 1970-01-01)
print(time.time())                  # 1758588800.123

# Pausar execução (segundos)
print("Início")
time.sleep(1)                       # Pausa por 1 segundo
print("1 segundo depois")

# Formatar hora atual
print(time.strftime("%Y-%m-%d %H:%M:%S"))       # 2026-06-23 16:00:00

▶ Exemplo: Temporizador (Dificuldade ⭐)

▶ Experimente

Saída:

TEXT 📖 Somente leitura
\r⏰ Tempo esgotado!


3. sys — Interação com o Sistema

PYTHON
import sys

# Versão do Python
print(sys.version)                  # 3.13.0 ...

# Argumentos da linha de comando (ao executar python script.py a b c)
print(sys.argv)                     # ['script.py', 'a', 'b', 'c']

# Sair do programa
# sys.exit(0)                       # Saída normal

# Entrada padrão
# line = sys.stdin.readline()       # Lê uma linha de entrada

▶ Exemplo: Calculadora de Linha de Comando (Dificuldade ⭐⭐)

▶ Experimente

Saída:

TEXT 📖 Somente leitura
Uso: python calculator.py num1 operador num2
Exemplo: python calculator.py 3 + 5
Erro: não é possível dividir por zero


4. os — Sistema Operacional

PYTHON
import os

# Diretório de trabalho atual
print(os.getcwd())                  # D:\projeto

# Mudar diretório
# os.chdir("/tmp")

# Listar conteúdo do diretório
for item in os.listdir("."):
    print(item)

# Criar diretório
# os.mkdir("nova_pasta")

# Verificar caminhos
print(os.path.exists("teste.txt"))   # True
print(os.path.isfile("teste.txt"))   # True
print(os.path.isdir("data"))        # True

# Juntar caminhos
path = os.path.join("data", "files", "teste.txt")
print(path)                         # data/files/teste.txt

▶ Exemplo: Renomeação em Lote de Arquivos (Dificuldade ⭐⭐)

▶ Experimente

Saída:

TEXT 📖 Somente leitura
Exemplo de renomeação em lote (apenas exibição, não executado):
Iterar todos os arquivos .txt, renomear para formato prefixo_001.txt


5. Casos de Uso Comuns


Funções internas relacionadas:exit()

❓ Perguntas Frequentes

P random é adequado para números aleatórios criptográficos?
R Não. random usa um PRNG (Gerador de Números Pseudo-Aleatórios), que é previsível. Para números aleatórios criptograficamente seguros (ex.: gerar senhas, tokens), use o módulo secrets.
P time.sleep() bloqueia o programa inteiro. Como faço um atraso não bloqueante?
R sleep() de fato bloqueia a thread atual. Para atrasos não bloqueantes, use multi-threading ou frameworks assíncronos como asyncio. Para cenários simples, sleep() é suficiente.
P Devo usar os ou pathlib?
R Python 3.4+ recomenda pathlib (mais orientado a objetos, mais intuitivo), mas os é de nível mais baixo e mais abrangente. Use pathlib para novos projetos; use os para chamadas de sistema de baixo nível.

📖 Resumo



📝 Exercícios

  1. Básico (Dificuldade ⭐): Escreva um programa que gere 10 números inteiros aleatórios entre 1 e 100, exiba-os e sua média.

  2. Intermediário (Dificuldade ⭐⭐): Escreva uma função geradora de senha generate_password(length=8) que cria senhas aleatórias contendo maiúsculas, minúsculas e dígitos. Dica: Use string.ascii_letters + string.digits como pool de caracteres; use random.choice() para escolher caracteres.

  3. Desafio (Dificuldade ⭐⭐⭐): Escreva uma "ferramenta de estatísticas de pasta." Dado um caminho de diretório (passado via sys.argv), conte o número de arquivos e o tamanho total para cada tipo de arquivo (extensão). Dica: Use os.listdir() para iterar, os.path.splitext() para extensão, os.path.getsize() para tamanho do arquivo.

Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%