[Linux-Biella] [vallini.daniele a bilug.it: [Bilug] Python]
maria teresa panunzio
mariateresa.panunzio a yahoo.it
Lun 11 Ott 2021 10:44:04 CEST
Il sabato 9 ottobre 2021, 06:44:52 CEST, <vallini.daniele a bilug.it> ha scritto:
----- Forwarded message from vallini.daniele a bilug.it -----
Date: Sat, 9 Oct 2021 06:43:03 +0200
From: vallini.daniele a bilug.it
To: bilug a list.bilug.it
Subject: [Bilug] Python
Sto iniziando a programmare in Python.
Sto usando l'API yfinance di Python perche' migliore dell'analoga API di perl.
Mi scontro con il confronto fra bash e python nell'accesso ai database.
In bash per ottenere un output .csv e' sufficiente una solo stringa tipo
echo "testo_query;" | database > csv_risultante
oppure per immettere dati da un .csv:
echo" LOAD DATA INFILE ... INTO TABLE ...;" | database
In Python solo per una interrogazione
# Module Imports
import mariadb
import sys
# Connect to MariaDB Platform
try:
conn = mariadb.connect(
user="db_user",
password="db_user_passwd",
host="192.0.2.1",
port=3306,
database="nome_database"
)
except mariadb.Error as e:
print(f"Error connecting to MariaDB Platform: {e}")
sys.exit(1)
# Get Cursor
cur = conn.cursor()
cur.execute(
"SELECT contenuto_query",
(some_name,))
# Print Result-set
for (first_name, last_name) in cur:
print(f"First Name: {first_name}, Last Name: {last_name}")
Per una immissione dati il cesso e' simile
Sto sbagliando o python e' proprio un po' impedito con i database?
L'accoppiata python bash funziona bene ma non mi pare elegante starnazzare fra 2 diversi interpreti comandi con file dati intermedi.
Qualcuno puo' aiutarmi oggi in sede?
--
DanieleRe: [Linux-Biella] [vallini.daniele a bilug.it: [Bilug] Python]
- Andrea Guzzoandrea.guzzo92 a gmail.comMostra di menoAMaria Teresa Panunziomariateresa.panunzio a yahoo.itCcMario Nardimario.nardi.70 a gmail.com11 ott alle ore 10:41Ciao,
Come si fa a commentare nella mail bilug? Risponderei volentieri :)
Dal mio punto di vista il confronto bash / python non sussiste, siccome bash conosce già le informazioni del database perché installato in locale e sulla macchina.
Se fosse installato in un docker container, non sarebbe così facile l’interrogazione…così come se fosse installato in un altro server remoto…
Comunque la sintassi Python sembra corretta:
- Bisogna inizializzare la connessione con le informazioni del database
- Bisogna creare una sessione o un cursore
- Eseguire una query
- Dall’oggetto ottenuto recuperare un risultato
- Chiudere eventualmente le connessioni
Questo è valido su qualsiasi libreria per qualsiasi linguaggio di programmazione.
Il vantaggio è che in Python le righe che si scrivono sono poche, mentre su altri linguaggi spesso è decisamente più complicato.
Ps: Python non è per niente impedito con i database, funziona molto bene e le librerie sono molto valide…inviterei le persone a seguire PythonBiellaGroup e tutti gli interventi, video e serate che abbiamo fatto parlando delle varie librerie.
Ciao,
Andrea.
_______________________________________________
Bilug mailing list
Bilug a list.bilug.it
https://list.bilug.it/listinfo/bilug
----- End forwarded message -----
--
Daniele
_______________________________________________
Linux mailing list
Linux a list.bilug.it
https://list.bilug.it/listinfo/linux
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://list.bilug.it/pipermail/linux/attachments/20211011/289616da/attachment.htm>
Maggiori informazioni sulla lista
Linux