Forum >> Programmazione Python >> Scripting >> Python su Linux

Pagina: 1

Buongiorno a tutti,
Sono nuovo della comunità, pur avendo un minimo di esperienza con il Python.

Mi sono iscritto al forum perchè ho un problema e non essendo riuscito a reperire documentazione in rete ho la

necessità di parlare con qualcuno esperto a tu per tu. Saltando i convenevoli vi espongo il mio problema.

Volevo iniziare a programmare su Linux e soprattutto per Linux ma non riesco a trovare API Python per la gestione

di un sistema basato su Kernel Linux, mi ritrovo quindi in un vicolo cieco.

Per gestione di un sistema intendo ad esempio i socket, il semplice I/O su un file di testo o la gestione della memoria di massa.

Vi ringrazio anticipatamente per il vostro tempo :)
Quando ho iniziato a studiare Python non immaginavo che cinque anni dopo sarei passato da win a Linux. Non usando librerie dipendenti dal sistema non ho notato alcuna differenza tranne i nomi dei path da adattare al filesystem unix. Il diverso fineriga (LF invece di CR+LF) è un problema più per win che per Linux, basta usare qualsiasi editor più evoluto di notepad (anche se per avviare i programmi col doppio click in Linux il fineriga deve essere unix). Ho notato qualche differenza di comportamento nelle finestre usando GUI in Tk, ma le operazioni base, socket, I/O su file o porta seriale, sono identiche (ovviamente la porta seriale ha un nome diverso).
*** Il codice va evidenziato con il simbolo di fianco ai colori per non perdere l'indentazione ***
Ciao, inizio col ringraziarti per la tua risposta anche se, a essere sincero, non ho capito come sfruttarla a pieno per
colmare le mie lacune.

Cerco di andare più nel dettaglio, fin ora cercando su internet ho trovato 2 librerie che si avvicinano a ciò che mi serve, o forse sono proprio ciò che mi serve, senza che me ne sia accorto. Comunque le 2 librerie in questione sono

"system" e "os" anche se come ho detto non riesco a comprendere come sfruttarle a pieno e questo e' strano per uno che come me dal C++ sta cercando di far sua anche la cultura del Python. Il punto e' che non riesco a trovare librerie e/o documentazione che mi permettano la gestione dei processi, l'avvio di programmi esterni o l'interazione che sto cercando con hardware e periferiche, spero che questo post renda, per chi vorrà rispondere, più chiaro ciò di cui ho bisogno.

Grazie ancora per la lettura.


--- Ultima modifica di Draser in data 2016-03-19 15:59:31 ---
Gestione file e percorsi:
- os
- os.path
- shutil

Gestione processi (interni)
- threading
- multiprocessing
(meglio il secondo perché threading lavora con un solo processo principale su un singolo core aggiungendo un pesante overhead)

Gestione processi (esterni)
- subprocess
(meglio subprocess del vecchio os.system)

Varie di sistema
- sys


Per la documentazione sono d'accordo, quella di Python è un mosaico di info da mettere assieme da varie fonti, non esiste un'opera omnia che spiega ogni singolo parametro (tantomeno in italiano). È una mancanza che sento anch'io. Un po' di aiuto sono le funzioni dir(oggetto) e help(oggetto) che almeno elencano i principali attributi degli oggetti.


Per "interazione con l'hardware" non so cosa intendi esattamente. Tra l'altro Python è un linguaggio di livello molto elevato (lo paragonerei più a Java che a C++ ma conosco quasi nulla di questi ultimi), ogni gestione "particolare", comprese la creazione di GUI, la gestione di contenuti multimediali o le applicazioni scientifiche, è affidata a librerie terze (e il mosaico purtroppo si sparpaglia ancora di più).
*** Il codice va evidenziato con il simbolo di fianco ai colori per non perdere l'indentazione ***
La documentazione frammentata non e' un gran problema, sul C++ ad esempio e' la stessa cosa, non si trova niente di guidato, diciamo che e' un percorso che devi costruirti tu con la curiosità e credo sia così un pò per tutti i linguaggi.
Comunque sei riuscito a darmi la risposta che cercavo adesso ho più chiara la cosa, che dire con un pò di olio di gomito e voglia di leggere sono sicuro che riuscirò a padroneggiare questi strumenti. :)


Pagina: 1



Esegui il login per scrivere una risposta.