Python Cheat Sheet
Frammenti di codice Python frequentemente necessari
A volte ne ho bisogno ma non riesco a trovarli subito.
Per questo motivo li tengo tutti qui.
Non sono niente di nuovo,
solo una serie di copia-incolla,
ma funzionano per me,
e spero che possano risultare utili anche a te.
Comandi comuni di Anaconda
Verifica se Conda è installato
conda -V
Verifica se Conda è aggiornato
conda update conda
Crea un ambiente virtuale
conda create -n newenvname python=3.12 anaconda
Attiva l’ambiente virtuale
source activate newenvname
Installa pacchetti Python aggiuntivi in un ambiente virtuale
conda install -n newenvname [package]
Disattiva l’ambiente virtuale
source deactivate
Elimina l’ambiente virtuale
conda remove -n newenvname --all
Dipendenze del programma
Installazione delle dipendenze - Utilizzando un file requirements
Invece di installare i pacchetti singolarmente, pip ti permette di dichiarare tutte le dipendenze in un File delle Richieste. Ad esempio, potresti creare un file requirements.txt contenente:
requests==2.18.4
google-auth==1.1.0
E poi dire a pip di installare tutti i pacchetti in questo file utilizzando l’opzione -r:
python3 -m pip install -r requirements.txt
Congelamento delle dipendenze
Pip può esportare un elenco di tutti i pacchetti installati e le loro versioni utilizzando il comando freeze:
python3 -m pip freeze
produrrà qualcosa del genere
requests==2.18.4
google-auth==1.1.0
Il comando pip freeze è utile per creare File delle Richieste che possono ricostruire le esatte versioni di tutti i pacchetti installati in un ambiente.
Disegna un rettangolo
import cv2
cv2.rectangle(img, (x1, y1), (x2, y2), color=(255,0,0), thickness=2)
x1,y1 ------
| |
| |
| |
--------x2,y2
per aggiungere le domande successive:
cv2.imwrite("my.png",img)
cv2.imshow("lalala", img)
k = cv2.waitKey(0) # 0==aspetta all'infinito
Ho un oggetto immagine PIL e voglio disegnare un rettangolo su questa immagine. Voglio utilizzare opencv2 per disegnare il rettangolo e poi convertire nuovamente in un oggetto immagine PIL. Ecco come lo faccio:
# im è un oggetto immagine PIL
im_arr = np.asarray(im)
# converte l'array rgb in formato bgr di opencv
im_arr_bgr = cv2.cvtColor(im_arr, cv2.COLOR_RGB2BGR)
# pts1 e pts2 sono le coordinate dell'angolo in alto a sinistra e in basso a destra del rettangolo
cv2.rectangle(im_arr_bgr, pts1, pts2,
color=(0, 255, 0), thickness=3)
im_arr = cv2.cvtColor(im_arr_bgr, cv2.COLOR_BGR2RGB)
# converte nuovamente in oggetto immagine
im = Image.fromarray(im_arr)
Parsing semplice degli argomenti
import json
#---------------------------------------------------------------------------
def do_some_awesomeness(src_file, tgt_file):
print('Convertendo alcune cose da {} a {}'.format(src_file, tgt_file))
#---------------------------------------------------------------------------
def run():
import argparse
parser = argparse.ArgumentParser(description="Un utile e efficiente strumento Python.")
parser.add_argument("-s", "--src", dest="src_file",
help="nome del file json di input")
parser.add_argument("-t", "--tgt", dest="tgt_file",
help="nome del file json di output")
args = parser.parse_args()
do_some_awesomeness(args.src_file, args.tgt_file)
if __name__ == '__main__':
run()
Poi puoi chiamarlo così:
python ave_roma.py --src 1.json --tgt 2.json
Carica e salva 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)
Ottenere il nome del file senza estensione
import os
print(os.path.splitext("/path/to/some/file.txt")[0])
stamperà:
/path/to/some/file
Link utili
- Lambda stratificate con AWS SAM e Python
- AWS SAM + AWS SQS + Python PowerTools
- Guida rapida per PyInstaller
- Foglio di trucchi per Bash
- Addestramento del rilevatore di oggetti con MMDetection e Label Studio
- Foglio di trucchi per Conda
- Foglio di trucchi per venv
- Foglio di trucchi per Ollama
- Foglio di trucchi per Docker
- MMDetection non è più supportato
- Generazione di PDF in Python - librerie ed esempi