Resumo de Python — Trechos úteis de código Python.
Fragmentos de código Python frequentemente necessários
Às vezes preciso disto, mas não consigo encontrar imediatamente. Portanto, mantenho tudo aqui.
Não são nada de novo, apenas uma série de cópias e colagens, mas funcionam para mim, e espero que também os achem úteis.

Comandos comuns do Anaconda
Dê uma olhada no uv - Novo Gerenciador de Pacotes, Projetos e Ambientes Python
Verificar se o Conda está instalado
conda -V
Verificar se o Conda está atualizado
conda update conda
Criar um ambiente virtual
conda create -n newenvname python=3.12 anaconda
Ativar seu ambiente virtual
source activate newenvname
Instalar pacotes Python adicionais em um ambiente virtual
conda install -n newenvname [package]
Desativar seu ambiente virtual
source deactivate
Excluir o ambiente virtual
conda remove -n newenvname --all
Dependências do programa
Instalar dependências - Usando um arquivo de requisitos
Em vez de instalar pacotes individualmente, o pip permite declarar todas as dependências em um Arquivo de Requisitos. Por exemplo, você poderia criar um arquivo requirements.txt contendo:
requests==2.18.4
google-auth==1.1.0
E dizer ao pip para instalar todos os pacotes neste arquivo usando a flag -r:
python3 -m pip install -r requirements.txt
Congelar dependências
O pip pode exportar uma lista de todos os pacotes instalados e suas versões usando o comando freeze:
python3 -m pip freeze
produzirá algo como
requests==2.18.4
google-auth==1.1.0
O comando pip freeze é útil para criar Arquivos de Requisitos que podem recriar as versões exatas de todos os pacotes instalados em um ambiente.
Desenhar retângulo
import cv2
cv2.rectangle(img, (x1, y1), (x2, y2), color=(255,0,0), thickness=2)
x1,y1 ------
| |
| |
| |
--------x2,y2
para adicionar as perguntas de acompanhamento abaixo:
cv2.imwrite("my.png",img)
cv2.imshow("lalala", img)
k = cv2.waitKey(0) # 0==espera para sempre
Tenho um objeto PIL Image e quero desenhar um retângulo nesta imagem. Quero usar opencv2 para desenhar o retângulo e depois converter de volta para um objeto PIL Image. É assim que eu faço:
# im é um objeto PIL Image
im_arr = np.asarray(im)
# converte o array rgb para o formato bgr do opencv
im_arr_bgr = cv2.cvtColor(im_arr, cv2.COLOR_RGB2BGR)
# pts1 e pts2 são as coordenadas superior esquerda e inferior direita do retângulo
cv2.rectangle(im_arr_bgr, pts1, pts2,
color=(0, 255, 0), thickness=3)
im_arr = cv2.cvtColor(im_arr_bgr, cv2.COLOR_BGR2RGB)
# converte de volta para objeto Image
im = Image.fromarray(im_arr)
Análise de argumentos fácil
import json
#---------------------------------------------------------------------------
def do_some_awesomeness(src_file, tgt_file):
print('Convertendo algumas coisas de {} para {}'.format(src_file, tgt_file))
#---------------------------------------------------------------------------
def run():
import argparse
parser = argparse.ArgumentParser(description="Alguma ferramenta python mega útil e eficiente.")
parser.add_argument("-s", "--src", dest="src_file",
help="nome do arquivo json de entrada")
parser.add_argument("-t", "--tgt", dest="tgt_file",
help="nome do arquivo json de saída")
args = parser.parse_args()
do_some_awesomeness(args.src_file, args.tgt_file)
if __name__ == '__main__':
run()
E depois chame assim:
python ave_roma.py --src 1.json --tgt 2.json
Carregar e salvar json
import json
def do_convert(src_file, tgt_file):
with open(src_file) as f:
src = json.load(f)
tgt = src # :)
with open(tgt_file, 'w', encoding='utf-8') as f:
json.dump(tgt, f, ensure_ascii=False, indent=4)
Obter nome do arquivo sem extensão
import os
print(os.path.splitext("/path/to/some/file.txt")[0])
imprimirá:
/path/to/some/file
Links úteis
- Layered Lambdas com AWS SAM e Python
- AWS SAM, AWS SQS e Python PowerTools
- PyInstaller Quickstart
- Treinamento de Detector de Objetos com MMDetection e Label Studio
- Conda Cheatsheet
- venv Cheatsheet
- Ollama cheatsheet
- Docker Cheatsheet
- MMdetection não é mais suportado
- Gerando PDF em Python - Bibliotecas e exemplos