Forum >> Principianti >> Distribuzione programmi Python

Pagina: 1

Ciao a tutti,

sono nuovo del mondo Python, ma non della programmazione, infatti sviluppo in Java da molti anni. Vorrei introdurre in azienda Python 3.6.0, ma essendo un'azienda molto sensibile alle proprietà intellettuali, non accetta di deployare negli ambienti di produzione i sorgenti. Utilizzando pip per l'installazione di pacchetti wheel (whl) non ho trovato nessun modo per nascondere i sorgenti e portare in produzione soltanto i compilati pyc. Riuscite a chiarirmi le idee su come effettuare il deploy senza sorgenti?

Venendo dal mondo Java sono abituato a fare i jar contenenti i file .class.

Grazie
Ciao a tutti,

sono nuovo del mondo Python, ma non della programmazione, infatti sviluppo in Java da molti anni. Vorrei introdurre in azienda Python 3.6.0, ma essendo un'azienda molto sensibile alle proprietà intellettuali, non accetta di deployare negli ambienti di produzione i sorgenti. Utilizzando pip per l'installazione di pacchetti wheel (whl) non ho trovato nessun modo per nascondere i sorgenti e portare in produzione soltanto i compilati pyc. Riuscite a chiarirmi le idee su come effettuare il deploy senza sorgenti?

Venendo dal mondo Java sono abituato a fare i jar contenenti i file .class.

Grazie
Puoi compilare i tuoi sorgenti nei file con
python -m compileall .
e poi distribuire solo i file .pyc.
Se usi python 3 li troverai nelle subdirectory __pycache__ dentro ogni directory dell'applicazione, altrimenti li troverai nelle stesse directory dei sorgenti.


THE 🍺-WARE LICENSE (Revision ㊷):
<㎝🐌🐍.🇮🇹> wrote this post. As long as you retain this notice you
can do whatever you want with this stuff. If we meet some day, and you
think this stuff is worth it, you can buy me a 🍺 in return. -- ㎝
Ciao,

in tanto grazie per la risposta. Utilizzo già il comando compileall per creare i pyc, ma come li distribuisco? Posso utilizzare wheel? Se si come si fa? Perché wheel mi porta dentro sempre anche i sorgenti.

Grazie


Pagina: 1



Esegui il login per scrivere una risposta.