{"id":58801,"date":"2022-08-08T07:53:36","date_gmt":"2022-08-08T06:53:36","guid":{"rendered":"https:\/\/kinqsta.com\/it\/?p=58801&#038;preview=true&#038;preview_id=58801"},"modified":"2023-02-21T17:37:34","modified_gmt":"2023-02-21T16:37:34","slug":"comandi-python","status":"publish","type":"post","link":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/","title":{"rendered":"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente"},"content":{"rendered":"<p>Python \u00e8 al momento uno dei <a href=\"https:\/\/kinqsta.com\/it\/blog\/miglior-linguaggio-di-programmazione\/\">linguaggi di programmazione pi\u00f9 popolari<\/a>. \u00c8 un linguaggio potente ma semplice che pu\u00f2 essere utilizzato in quasi tutti gli ambienti di sviluppo.<\/p>\n<p>Un <a href=\"https:\/\/insights.stackoverflow.com\/survey\/2021#most-loved-dreaded-and-wanted-language-want\" target=\"_blank\" rel=\"noopener noreferrer\">sondaggio di Stack Overflow del 2021<\/a> rivela che Python \u00e8 il linguaggio di programmazione con cui la maggior parte delle persone che si occupano di sviluppo preferisce lavorare.<\/p>\n<figure id=\"attachment_128331\" aria-describedby=\"caption-attachment-128331\" style=\"width: 1024px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-128331\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2022\/07\/stack-overflow-survey-1024x681.png\" alt=\"Istogramma con i linguaggi di programmazione che suscitano pi\u00f9 interesse in chi lavora nello sviluppo web, secondo un sondaggio realizzato su 82914 developer: Python \u00e8 il linguaggio che desta pi\u00f9 interesse con il 19,04%, Typescript segue con il 15,29% e, a chiudere la top 3, JS con il 14,59%.\" width=\"1024\" height=\"681\"><figcaption id=\"caption-attachment-128331\" class=\"wp-caption-text\">Sondaggio di Stack Overflow.<\/figcaption><\/figure>\n\n<p>Grazie a strumenti come Jupyter Notebook, Google Colaboratory e compilatori online, potete iniziare a usare questo linguaggio senza dovervi preoccupare di installare nulla.<\/p>\n<p>Tuttavia, se volete andare oltre e godere della vera potenza di un linguaggio di uso generale come Python (soprattutto per creare <a href=\"https:\/\/kinqsta.com\/it\/blog\/app-node-js\/\">applicazioni complesse<\/a>), prima o poi dovrete imparare a usare la CLI, o interfaccia a riga di comando.<\/p>\n<p>La maggior parte degli sviluppatori concorda sul fatto che una delle parti pi\u00f9 intimidatorie <a href=\"https:\/\/kinqsta.com\/it\/blog\/tutorial-python\/\">dell&#8217;apprendimento di Python<\/a> \u00e8 la CLI. Ma con pochi comandi, la padroneggerete in men che non si dica.<\/p>\n<p>In questo articolo vediamo i comandi pi\u00f9 utili per lo sviluppo in Python.<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h2>Cos&#8217;\u00c8 l&#8217;Interfaccia a Riga di Comando?<\/h2>\n<p>L&#8217;interfaccia a riga di comando, spesso abbreviata in CLI, \u00e8 un programma basato sul testo utilizzato per eseguire programmi e svolgere attivit\u00e0 relative al sistema operativo (OS), come la creazione e la gestione di file.<\/p>\n<p>Le CLI accettano input dalla tastiera <a href=\"https:\/\/kinqsta.com\/it\/blog\/comandi-linux\/\">sotto forma di comandi<\/a> e li passano a una shell o a un interprete di comandi. Queste shell interpretano i comandi impartiti dall&#8217;utente, li eseguono e restituiscono un risultato spesso indicato come output.<\/p>\n<p>Una CLI pu\u00f2 eseguire diverse shell. Questa schermata mostra due diverse CLI, una con la shell Python e l&#8217;altra con Bash:<\/p>\n<figure id=\"attachment_128333\" aria-describedby=\"caption-attachment-128333\" style=\"width: 1024px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-128333\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2022\/07\/Command-line-Python-Bash-1-1024x576.png\" alt=\"Screenshot di un editor di codice con le shell Python e Bash aperte in due diverse CLI che mostrano l'output dei comandi print e neofetch.\" width=\"1024\" height=\"576\"><figcaption id=\"caption-attachment-128333\" class=\"wp-caption-text\">Shell Python e Bash.<\/figcaption><\/figure>\n<p>Questi due concetti vengono spesso confusi, quindi ecco la spiegazione:<\/p>\n<ul>\n<li>La <strong>CLI<\/strong> \u00e8 l&#8217;interfaccia testuale in cui si digitano i comandi e se ne ottiene l&#8217;output. Pu\u00f2 eseguire diverse shell.<\/li>\n<li>Una <strong>shell<\/strong> \u00e8 un interprete di comandi in grado di interagire con il sistema operativo.<\/li>\n<\/ul>\n<p>Che ci crediate o no, ogni programma che il vostro sistema sta eseguendo comporta un comando. Le finestre (<a href=\"https:\/\/en.wikipedia.org\/wiki\/Graphical_user_interface\" target=\"_blank\" rel=\"noopener noreferrer\">GUI<\/a>) con le quali interagite ogni giorno sono costituite da collegamenti che attivano comandi che vi permettono di interagire con il sistema operativo.<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Un comando non \u00e8 altro che un ordine specifico impartito al sistema operativo del computer.<\/p>\n<\/aside>\n\n<h3>C\u2019\u00c8 Bisogno della CLI per Sviluppare con Python?<\/h3>\n<p>Per essere <a href=\"https:\/\/kinqsta.com\/it\/blog\/sviluppatore-full-stack\/\">developer full-stack<\/a> efficaci, dovete avere una solida conoscenza della riga di comando. Questo perch\u00e9 la maggior parte dei framework di backend richiede una qualche forma di interazione diretta con una CLI e se avete intenzione di distribuire un&#8217;applicazione in autonomia, la riga di comando sar\u00e0 la vostra migliore amica.<\/p>\n<p>Al giorno d&#8217;oggi \u00e8 possibile eseguire Python da innumerevoli servizi online, oltre che da IDE che rendono molto pi\u00f9 semplice l&#8217;esecuzione dei vostri programmi. Ma se vi occupate di <a href=\"https:\/\/kinqsta.com\/it\/blog\/git-per-lo-sviluppo-web\/\">sviluppo web<\/a>, in particolare di <a href=\"https:\/\/kinqsta.com\/it\/blog\/backend-vs-frontend\/\">backend<\/a>, automazione di attivit\u00e0, blockchain, utilizzo di un computer remoto tramite <a href=\"https:\/\/kinqsta.com\/it\/blog\/generare-chiavi-ssh\/\">SSH<\/a> o gestione di strumenti Python-friendly come Docker, dovrete assolutamente usare la CLI.<\/p>\n<p>Infatti, Python dispone di numerose librerie per la creazione di applicazioni CLI come Typer, Argsparse e Click. Potete passare da semplice utente della CLI a creare le vostre applicazioni CLI! Questo dimostra la forte connessione tra gli ambienti CLI e Python.<\/p>\n<p>Una volta acquisita la padronanza della CLI, sar\u00e0 molto pi\u00f9 facile eseguire compiti di <a href=\"https:\/\/kinqsta.com\/it\/blog\/tutorial-python\/\">programmazione Python<\/a> e vedrete un vantaggio nell&#8217;utilizzo di altri linguaggi di programmazione come <a href=\"https:\/\/kinqsta.com\/it\/blog\/php-vs-python\/\">PHP<\/a>, C, C++ o <a href=\"https:\/\/kinqsta.com\/it\/blog\/sviluppatore-java\/\">Java<\/a>.<\/p>\n<h2>Introduzione alla CLI<\/h2>\n<p>A seconda del sistema operativo che state usando, troverete delle differenze nell&#8217;utilizzo della riga di comando. Ogni sistema operativo ha un proprio modo di aprire e interagire con la CLI a causa delle diverse strutture organizzative dei file e delle shell di comando predefinite.<\/p>\n<p>Vediamo i tre sistemi operativi pi\u00f9 usati da chi sviluppa: Windows, Mac e Linux.<\/p>\n<h3>Windows<\/h3>\n<p><a href=\"https:\/\/kinqsta.com\/it\/blog\/fare-screenshot-su-windows\/\">Windows<\/a> \u00e8 il sistema operativo desktop pi\u00f9 diffuso, soprattutto grazie al suo prezzo e alla sua facilit\u00e0 d&#8217;uso. Se volete accedere alla CLI in Windows, dovete aprire il programma &#8220;Prompt dei comandi&#8221; o &#8220;Windows Powershell&#8221;.<\/p>\n<p>Tenete presente che Windows usa <code>\\<\/code> per i percorsi invece di <code>\/<\/code>. Dovete ricordarlo quando navigate tra le directory.<\/p>\n<p>Sempre su Windows, avete l&#8217;alternativa di installare <a href=\"https:\/\/git-scm.com\/download\/win\" target=\"_blank\" rel=\"noopener noreferrer\">Git Bash<\/a>, una riga di comando che emula il comportamento della shell Bash in Windows. In questo modo la maggior parte dei comandi Unix mostrati di seguito saranno compatibili con il vostro sistema.<\/p>\n<h3>Mac<\/h3>\n<p>Per quanto riguarda Mac, la riga di comando \u00e8 accessibile da un&#8217;applicazione integrata chiamata &#8220;Terminale&#8221;. Potete cercarla con il Launchpad o trovarla nella cartella &#8220;Utilities&#8221; sotto &#8220;applicazioni&#8221;.<\/p>\n<h3>Linux<\/h3>\n<p>Su Linux avete a disposizione molte opzioni diverse a seconda della distro che usate, ma il comando &#8220;Ctrl + Alt + T&#8221; di solito attiva il terminale predefinito del vostro sistema.<\/p>\n<p>Ora dovreste avere una finestra simile a quella mostrata qui sotto:<\/p>\n<figure id=\"attachment_128334\" aria-describedby=\"caption-attachment-128334\" style=\"width: 1024px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-128334\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2022\/07\/terminal-1024x519.png\" alt=\" Scherma di Manjaro Linux CLI che mostra lo stato di sistema\" width=\"1024\" height=\"519\"><figcaption id=\"caption-attachment-128334\" class=\"wp-caption-text\">CLI.<\/figcaption><\/figure>\n<h2>I 20 (e Oltre) Comandi CLI Pi\u00f9 Utili per lo Sviluppo in Python<\/h2>\n<p>Una volta aperta la vostra CLI, \u00e8 il momento di immergervi nei principali comandi della shell che renderanno la vostra routine di sviluppo Python molto pi\u00f9 semplice.<\/p>\n<h3>Comandi di Installazione<\/h3>\n<p>Probabilmente vi sarete imbattuti in un milione di modi per installare Python. Ma a volte \u00e8 molto pi\u00f9 comodo farlo con un semplice comando.<\/p>\n<p>Ecco i diversi comandi che vi aiuteranno a installare Python su diversi sistemi operativi.<\/p>\n<h4>1. Chocolatey<\/h4>\n<p>Su Windows, per impostazione predefinita, non esiste un gestore di pacchetti. Un&#8217;opzione per ovviare a questo problema \u00e8 <a href=\"https:\/\/chocolatey.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Chocolatey<\/a>, che vi fornisce programmi da installare direttamente dalla riga di comando, tra cui ovviamente <a href=\"https:\/\/community.chocolatey.org\/packages\/python\" target=\"_blank\" rel=\"noopener noreferrer\">Python<\/a>.<\/p>\n<p>Assicuratevi di <a href=\"https:\/\/chocolatey.org\/install\" target=\"_blank\" rel=\"noopener noreferrer\">installare Chocolatey<\/a> prima di eseguire il seguente comando:<\/p>\n<pre><code class=\"language-bash\">choco install python --pre <\/code><\/pre>\n<h4>2. Homebrew e Pyenv<\/h4>\n<p>macOS viene fornito con Python 2.7 installato di default. Tuttavia, Python 2.7 \u00e8 ormai deprecato. L&#8217;intera comunit\u00e0 si \u00e8 spostata su Python 3. Per gestire in modo efficiente le versioni di Python, potete usare un programma come <a href=\"https:\/\/github.com\/pyenv\/pyenv\" target=\"_blank\" rel=\"noopener noreferrer\">pyenv<\/a>.<\/p>\n<p>Aprite una riga di comando e installate l&#8217;ultima versione di <a href=\"https:\/\/brew.sh\/\" target=\"_blank\" rel=\"noopener noreferrer\">Homebrew<\/a> (un gestore di pacchetti come Chocolatey) con il seguente comando:<\/p>\n<pre><code class=\"language-bash\">\/bin\/bash -c \"$(curl -fsSL\nhttps:\/\/raw.githubusercontent.com\/Homebrew\/install\/HEAD\/install.sh)\"<\/code><\/pre>\n<p>Poi potete installare pyenv con questo semplice comando:<\/p>\n<pre><code class=\"language-bash\">brew install pyenv<\/code><\/pre>\n<p>Potete installare una versione specifica di Python e impostarla come eseguibile globale di Python invece che di Python 2:<\/p>\n<pre><code class=\"language-bash\">pyenv install 3.10 # Version you want\npyenv global 3.10.4 # Sets that version as default<\/code><\/pre>\n<p>Ora, se chiamate Python, sar\u00e0 la versione che avete impostato con pyenv:<\/p>\n<pre><code class=\"language-bash\">python\n# Python 3.10.4 ....\n# &gt;&gt;&gt;<\/code><\/pre>\n<h4>3. apt, pacman e dnf<\/h4>\n<p>Dato l&#8217;ampio utilizzo di <a href=\"https:\/\/kinqsta.com\/it\/blog\/php-vs-python\/\">Python<\/a> per il <a href=\"https:\/\/kinqsta.com\/it\/blog\/open-source-database\/\">software open source<\/a>, un gran numero di distro Linux ha Python preinstallato. Se il vostro sistema non lo prevede, potete installare Python con un gestore di pacchetti.<\/p>\n<p>Nelle distro basate su Debian (Ubuntu, Linux Mint, Kali Linux), userete apt, acronimo di &#8220;advanced package tool&#8221;:<\/p>\n<pre><code class=\"language-bash\">sudo apt update\nsudo apt install python3<\/code><\/pre>\n<p>Inoltre, se volete impostare Python 3 come interprete Python predefinito, potete usare il seguente comando:<\/p>\n<pre><code class=\"language-bash\">sudo apt install python-is-python3<\/code><\/pre>\n<p>Nelle distro basate su Arch, potete usare il gestore di pacchetti ufficiale pacman:<\/p>\n<pre><code class=\"language-bash\">sudo pacman -S python<\/code><\/pre>\n<p>In Fedora e nelle distribuzioni Linux basate su RPM (Red Hat, CentOS), potete usare dnf:<\/p>\n<pre><code class=\"language-bash\">sudo dnf install python3<\/code><\/pre>\n<h3>Comandi dell&#8217;Interprete<\/h3>\n<p>Passiamo rapidamente in rassegna i principali flag &#8211; opzioni della riga di comando &#8211; del comando Python e del suo gestore di pacchetti, pip.<\/p>\n<h4>4. python<\/h4>\n<p>Il comando <code>python<\/code> ha diversi flag, ossia opzioni che modificano il comportamento dell&#8217;esecuzione del codice.<\/p>\n<p>Innanzitutto, per eseguire un file Python, basta chiamare l&#8217;interprete e aggiungere il nome del file, compresa l&#8217;estensione <code>.py<\/code>:<\/p>\n<pre><code class=\"language-bash\">python helloworld.py<\/code><\/pre>\n<p>Se avete bisogno di ricordare a cosa serve un flag, potete usare il flag <code>help<\/code> in una qualsiasi di queste 3 presentazioni:<\/p>\n<pre><code class=\"language-bash\">python -?\npython -h\npython --help<\/code><\/pre>\n<p>Per stampare (vedere) la versione di Python che state usando, usate il seguente comando:<\/p>\n<pre><code class=\"language-bash\">python -V\npython --version<\/code><\/pre>\n<p>Se volete eseguire il codice Python senza aprire e modificare un file <code>.py<\/code>, potete eseguirlo direttamente dal vostro terminale con il flag command:<\/p>\n<pre><code class=\"language-bash\"># Hello, World!\npython -c \"print('Hello, World!')\"<\/code><\/pre>\n<p>Il flag <code>m<\/code> esegue un modulo Python come uno script. Questo \u00e8 molto utile quando volete creare un ambiente virtuale con il modulo integrato <strong>venv<\/strong>:<\/p>\n<pre><code class=\"language-bash\">python -m venv .venv<\/code><\/pre>\n<h4>5. pip<\/h4>\n<p>Il comando <a href=\"https:\/\/pip.pypa.io\/en\/stable\/\" target=\"_blank\" rel=\"noopener noreferrer\">pip<\/a> cerca i pacchetti nel Python Package Index (PyPI), risolve le dipendenze e installa la versione del pacchetto che avete indicato.<\/p>\n<p>Per installare un pacchetto Python, dovete solo digitare <code>pip<\/code> e il nome del pacchetto che volete installare.<\/p>\n<p>Il seguente comando installer\u00e0 l&#8217;ultima versione del pacchetto:<\/p>\n<pre><code class=\"language-bash\">pip install django<\/code><\/pre>\n<p>Se volete una versione specifica, eseguite il seguente comando:<\/p>\n<pre><code class=\"language-bash\"># pip install package==version\npip install django==4.0.4<\/code><\/pre>\n<p>Quando lavorate a progetti collaborativi, dovete tenere traccia delle dipendenze, di solito con un file di requisiti. Con il flag <code>r<\/code> potete leggere e installare i pacchetti da un file di testo:<\/p>\n<pre><code class=\"language-bash\">pip install -r requirements.txt<\/code><\/pre>\n<p>Un&#8217;altra funzione comunemente utilizzata \u00e8 il flag <code>freeze<\/code>. Si usa per produrre un elenco delle versioni dei pacchetti installati nel vostro ambiente. Potete usarlo anche per visualizzare le vostre dipendenze in un file di requisiti:<\/p>\n<pre><code class=\"language-bash\">pip freeze &gt;&gt; requirements.txt<\/code><\/pre>\n<h3>Comandi di Autorizzazione<\/h3>\n<p>Python \u00e8 molto bravo nello scripting e nella gestione dei file. Per lavorare con questi compiti, dovete avere una certa conoscenza di come funzionano i permessi nel vostro sistema operativo.<\/p>\n<h4>6. sudo, runas<\/h4>\n<p>Nei sistemi basati su Unix (macOS, Linux, BSD), dovete avere i permessi di superutente per eseguire alcune operazioni, come l&#8217;installazione di un programma, come abbiamo fatto sopra.<\/p>\n<p>Il comando sudo vi permette di ottenere brevemente i permessi di admin per eseguire uno di questi comandi.<\/p>\n<p>Di seguito \u00e8 riportato un esempio di installazione globale di ueberzug (un pacchetto Python di anteprima delle immagini):<\/p>\n<pre><code class=\"language-bash\">sudo pip install ueberzug<\/code><\/pre>\n<p>L&#8217;equivalente di Windows \u00e8 <a href=\"http:\/\/technet.microsoft.com\/en-us\/library\/bb490994.aspx\">Runas<\/a>, che esegue uno script come utente diverso o come admin:<\/p>\n<pre><code class=\"language-bash\">runas \/noprofile \/user:Administrator cmd<\/code><\/pre>\n<p>Esistono anche altri progetti come <a href=\"https:\/\/gerardog.github.io\/gsudo\/\" target=\"_blank\" rel=\"noopener noreferrer\">Gsudo<\/a>, che rende il processo di elevazione dei permessi molto pi\u00f9 semplice rispetto agli altri comandi integrati di Windows:<\/p>\n<pre><code class=\"language-bash\">:: Installs gsudo\nchoco install gsudo\n\n:: Reads a file named MySecretFile.txt\ngsudo type MySecretFile.txt<\/code><\/pre>\n<h4>7. chmod<\/h4>\n<p><code><a href=\"https:\/\/linux.die.net\/man\/1\/chmod\" target=\"_blank\" rel=\"noopener noreferrer\">chmod<\/a><\/code> si usa per modificare i permessi di file e directory in Unix.<\/p>\n<p>Un uso comune \u00e8 quello di rendere eseguibile uno script Python:<\/p>\n<pre><code class=\"language-bash\"># Makes mypythonscript.py executablechmod +x\nmypythonscript.py<\/code><\/pre>\n<p>Dopo aver reso uno script eseguibile, potete eseguirlo direttamente utilizzando la notazione <code>.\/<\/code>:<\/p>\n<pre><code class=\"language-bash\"># Runs the script\n.\/mypythonscript.py<\/code><\/pre>\n<h3>Comandi di Navigazione<\/h3>\n<p>Navigare nel file system con un&#8217;interfaccia a riga di comando \u00e8 un&#8217;attivit\u00e0 quotidiana per chi sviluppa con Python. Ecco alcuni comandi essenziali utilizzati per navigare nel sistema quando si programma con Python.<\/p>\n<h4>8. ls, dir<\/h4>\n<p>Per elencare il contenuto di una directory (cartella), dovete usare il comando <code>ls<\/code> (Unix) o <code>dir<\/code> (Windows). Questo \u00e8 probabilmente il primo comando che avete imparato quando avete iniziato a usare la CLI.<\/p>\n<p>Ecco la sintassi utilizzata:<\/p>\n<pre><code class=\"language-bash\">ls # Shows the contents of the working directory\nls mydirectory<\/code><\/pre>\n<p>Ed ecco un esempio del contenuto di una cartella in un file system locale:<\/p>\n<pre><code class=\"language-bash\">ls test_python\/\n# classes_error.py radius.py test-Django<\/code><\/pre>\n<p>Questo comando ha molti flag utili. Infatti, viene spesso associato a <code>ls -al<\/code> per visualizzare i file nascosti (quelli con un punto all&#8217;inizio) e la modalit\u00e0, la dimensione e la data di ogni file:<\/p>\n<pre><code class=\"language-bash\">alias ls=\"ls -al\"\n\n# Results\ntotal 20\ndrwx------ 3 daniel daniel 4096 ene 16 19:13 .\ndrwxr-xr-x 36 daniel daniel 4096 may 17 22:18 ..\n-rw------- 1 daniel daniel  32 nov 17 2020 classes_error.py\n-rw------- 1 daniel daniel 327 nov 10 2020 radius.py\ndrwx------ 4 daniel daniel 4096 ene 16 01:07 test-Django<\/code><\/pre>\n<p>Per quanto riguarda Windows, potete usare <code>ls<\/code> usando Git Bash, oppure potete usare il comando integrato <code><a href=\"https:\/\/docs.microsoft.com\/en-us\/windows-server\/administration\/windows-commands\/dir\" target=\"_blank\" rel=\"noopener noreferrer\">dir<\/a><\/code> :<\/p>\n<pre><code class=\"language-bash\">dir<\/code><\/pre>\n<h4>9. pwd<\/h4>\n<p><code>pwd<\/code> sta per &#8220;print working directory&#8221; (stampa della directory di lavoro) e fa esattamente questo: vi fornisce il percorso completo della directory in cui vi trovate:<\/p>\n<pre><code class=\"language-bash\">pwd\n# \/home\/daniel\/github\/HTML-site\/images<\/code><\/pre>\n<p>Se vi \u00e8 capitato di perdervi nel vostro terminale, questo comando vi salver\u00e0 la vita.<\/p>\n<p>Potete ottenere lo stesso risultato in Windows usando il comando <code>cd<\/code> senza parametri (notate che lo stesso comando in Unix vi porterebbe alla home directory):<\/p>\n<pre><code class=\"language-bash\"># Only on Windows\ncd\n# D:FoldersubFolder<\/code><\/pre>\n<h4>10. cp<\/h4>\n<p>Copiare i file con un file manager grafico \u00e8 intuitivo, ma poco efficiente. Con questo comando potete copiare qualsiasi tipo di file sul vostro sistema:<\/p>\n<pre><code class=\"language-bash\">cp old_file.txt copy_old_file.txt<\/code><\/pre>\n<p>Per copiare tutto il contenuto di una directory, dovete usare <code>cp -r<\/code>:<\/p>\n<pre><code class=\"language-bash\">cp -r originaldirectory\/ newdir<\/code><\/pre>\n<p>L&#8217;equivalente di <code>cp<\/code> in Windows \u00e8 <code>copy<\/code>:<\/p>\n<pre><code class=\"language-bash\">copy old_file.txt copy_old_file.txt \/a<\/code><\/pre>\n<h4>11. cat, tipo<\/h4>\n<p>Per stampare il contenuto di un file di testo nel terminale senza aprire il file con un editor, potete usare i comandi <code>cat<\/code>, <code>more<\/code>, o <code>less<\/code> su Unix, e <code>type<\/code> su Windows:<\/p>\n<pre><code class=\"language-bash\">cat old_file.txt # Unix\ntype old_file.txt # Windows\n\n# Content\nHi there I hope you're enjoying the article ...\nas much as I've enjoyed writing it!\nEnd of the sample.<\/code><\/pre>\n<h4>12. mv, move<\/h4>\n<p>Il comando <code>mv<\/code> sposta file e directory da una directory all&#8217;altra &#8211; in pratica un taglia e incolla &#8211; o rinomina un file se la destinazione non esiste:<\/p>\n<pre><code class=\"language-bash\"># Rename files\nmv source_file.txt renamed_file.txt<\/code><\/pre>\n<pre><code class=\"language-bash\"># File to another directory\nmv renamed_file.txt newdir\/<\/code><\/pre>\n<p>Potete anche usare la corrispondenza dei pattern per spostare i file. Per esempio, spostate tutti i file di <code>.py<\/code> in un&#8217;altra cartella:<\/p>\n<pre><code class=\"language-bash\">mv *.py mypythondir\/<\/code><\/pre>\n<p>Un comando equivalente su Windows \u00e8 <code><a href=\"https:\/\/docs.microsoft.com\/en-us\/windows-server\/administration\/windows-commands\/move\" target=\"_blank\" rel=\"noopener noreferrer\">move<\/a><\/code> che ha quasi la stessa funzionalit\u00e0 del precedente:<\/p>\n<pre><code class=\"language-bash\"># Windows\nmove source_file.txt renamed_file.txt<\/code><\/pre>\n<h4>13. rm, del<\/h4>\n<p>Potete usare il comando <code>rm<\/code> per rimuovere file e directory.<\/p>\n<p>Per eliminare un file e <em>non<\/em> una directory, dovete usare il comando:<\/p>\n<pre><code class=\"language-bash\">rm file_to_remove.txt<\/code><\/pre>\n<p>Se volete eliminare una directory vuota, potete usare il flag ricorsivo (<code>-r<\/code>):<\/p>\n<pre><code class=\"language-bash\">rm -r dir_to_remove\/<\/code><\/pre>\n<p>Per rimuovere una directory con contenuti al suo interno, dovete usare i flag force (<code>-f<\/code>) e recursive:<\/p>\n<pre><code class=\"language-bash\">rm -rf dir_with_content\/<\/code><\/pre>\n<p>In forma simile, trovate <code>del<\/code> su Windows. Siate ancora pi\u00f9 cauti perch\u00e9 questo comando non ha i flag di prevenzione visti sopra:<\/p>\n<pre><code class=\"language-bash\">del mywindowsdir<\/code><\/pre>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Fate attenzione a questo comando. Una volta cancellato qualcosa, pu\u00f2 essere molto difficile recuperarlo.<\/p>\n<\/aside>\n\n<h4>14. exit<\/h4>\n<p>Una volta terminata la programmazione Python, dovreste essere in grado di uscire dalla vostra sessione di shell. Nella maggior parte dei casi, questa operazione chiuder\u00e0 anche il terminale che state usando:<\/p>\n<pre><code class=\"language-bash\">exit<\/code><\/pre>\n<p>Questo comando funziona sia su Windows che su Unix.<\/p>\n<h3>Editor a Riga di Comando<\/h3>\n<p>Una volta che ci avrete preso la mano con la riga di comando, scroprirete che \u00e8 pi\u00f9 lento cambiare finestra o addirittura usare il mouse per modificare il codice.<\/p>\n<p>Avere la possibilit\u00e0 di modificare il codice rimanendo nella riga di comando non \u00e8 solo un ottimo modo per risparmiare tempo, ma vi far\u00e0 anche sentire supereroi nel vostro team!<\/p>\n<p>Ecco alcuni degli editor a riga di comando pi\u00f9 usati.<\/p>\n<h4>15. Vim\/Neovim<\/h4>\n<p>Vim e il suo discendente, Neovim, sono editor di testo basati su tastiera e utilizzati principalmente a riga di comando. Secondo un <a href=\"https:\/\/insights.stackoverflow.com\/survey\/2021#section-most-loved-dreaded-and-wanted-collaboration-tools\" target=\"_blank\" rel=\"noopener noreferrer\">sondaggio di Stack Overflow del 2021<\/a>, sono al quarto e al primo posto tra gli editor pi\u00f9 amati da chi sviluppa.<\/p>\n<figure id=\"attachment_128335\" aria-describedby=\"caption-attachment-128335\" style=\"width: 1024px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-128335\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2022\/07\/most-loved-editors-1024x561.png\" alt=\"Istogramma con i risultati di un sondaggio su 81838 persone sugli editor pi\u00f9 amati: al primo posto c\u2019\u00e8 Neovim mentre Vim \u00e8 in quarta posizione.\" width=\"1024\" height=\"561\"><figcaption id=\"caption-attachment-128335\" class=\"wp-caption-text\">Gli editor di codice preferiti.<\/figcaption><\/figure>\n<p>Vim \u00e8 preinstallato su Linux e macOS. In effetti, \u00e8 l&#8217;editor che incontrerete di pi\u00f9 quando <a href=\"https:\/\/kinqsta.com\/it\/blog\/requisiti-server-wordpress\/\">interagite con i server<\/a>. Su Windows, dovrete installarlo usando il <a href=\"https:\/\/www.vim.org\/download.php#pc\" target=\"_blank\" rel=\"noopener noreferrer\">programma di installazione eseguibile<\/a> dalla pagina di Vim.<\/p>\n<p>Ora potete sfruttare le potenzialit\u00e0 di Vim semplicemente digitando il suo nome sulla riga di comando:<\/p>\n<pre><code class=\"language-bash\">vim<\/code><\/pre>\n<p>In questo modo si attiver\u00e0 un&#8217;interfaccia basata sul testo con diverse combinazioni di tasti per ogni azione di cui potreste aver bisogno durante la codifica in Python.<\/p>\n<p>Vim ha una curva di apprendimento piuttosto ripida, ma una volta che lo avrete imparato non avrete voglia di passare ad altro.<\/p>\n<figure id=\"attachment_128336\" aria-describedby=\"caption-attachment-128336\" style=\"width: 1024px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-128336 size-large\" src=\"https:\/\/kinqsta.com\/wp-content\/uploads\/2022\/07\/Vim-1024x559.png\" alt=\"Vi IMproved.\" width=\"1024\" height=\"559\"><figcaption id=\"caption-attachment-128336\" class=\"wp-caption-text\">Vi IMproved.<\/figcaption><\/figure>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Per uscire da Vim, premete &#8220;Escape&#8221; e digitate <code>:q<\/code>.<\/p>\n<\/aside>\n\n<h4>16. Nano<\/h4>\n<p><a href=\"https:\/\/www.nano-editor.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Nano<\/a> \u00e8 un altro editor di testo a riga di comando che si usa soprattutto per modifiche rapide.<\/p>\n<p>Supponiamo che abbiate introdotto un errore di sintassi nel vostro codice ma non volete aprire l&#8217;editor per correggerlo. Nano vi aiuta a correggerlo direttamente dalla vostra CLI:<\/p>\n<pre><code class=\"language-bash\">nano<\/code><\/pre>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Se ottenete un errore &#8220;Comando sconosciuto&#8221; con i comandi precedenti, tornate indietro e seguite l&#8217;intero <a href=\"https:\/\/www.nano-editor.org\/download.php\" target=\"_blank\" rel=\"noopener noreferrer\">processo di installazione<\/a>.<\/p>\n<\/aside>\n\n<h4>17. Emacs<\/h4>\n<p>Emacs \u00e8 uno degli editor di testo pi\u00f9 estensibili e personalizzabili che si possano trovare. Ha un&#8217;intera sezione dedicata alla <a href=\"https:\/\/www.emacswiki.org\/emacs\/PythonProgrammingInEmacs\" target=\"_blank\" rel=\"noopener noreferrer\">programmazione Python<\/a> dove troverai tonnellate di plugin per migliorare la vostra esperienza di sviluppo.<\/p>\n<p>Emacs \u00e8 disponibile in quasi tutti i sistemi operativi, quindi se non lo avete ancora installato, date un&#8217;occhiata alle <a href=\"https:\/\/www.gnu.org\/software\/emacs\/download.html\" target=\"_blank\" rel=\"noopener noreferrer\">istruzioni per il download<\/a>.<\/p>\n<p>Per aprire Emacs dalla riga di comando, usate il flag di sistema no window (<code>-nw<\/code>):<\/p>\n<pre><code class=\"language-bash\">emacs -nw<\/code><\/pre>\n<h3>Strumenti di Sviluppo<\/h3>\n<p>Lo sviluppo di Python non implica solo la codifica, ma anche la gestione di strumenti aggiuntivi come ambienti virtuali, sistemi di controllo di versione e strumenti di distribuzione.<\/p>\n<p>Imparando i comandi che seguono otterrete un vantaggio nello <a href=\"https:\/\/kinqsta.com\/it\/blog\/programmazione-orientata-agli-oggetti-python\/\">sviluppo di qualsiasi tipo di applicazione con Python<\/a>.<\/p>\n<h4>18. virtualenv\/venv<\/h4>\n<p>Gli ambienti virtuali sono una tecnica fondamentale per lo sviluppo di Python. Grazie a essi, potete isolare i pacchetti utilizzati in diversi progetti in una cartella leggera, spesso chiamata <code>.venv<\/code>.<\/p>\n<p>Con Python 3.3 o superiore, potete usare il modulo venv integrato per creare un ambiente virtuale:<\/p>\n<pre><code class=\"language-bash\"># .venv being the name of the virtual environment\npython -m venv .venv<\/code><\/pre>\n<p><a href=\"https:\/\/virtualenv.pypa.io\/en\/latest\/installation.html\" target=\"_blank\" rel=\"noopener noreferrer\">virtualenv<\/a> \u00e8 un progetto esterno pi\u00f9 veloce ed estensibile rispetto all&#8217;opzione integrata. Per creare un ambiente virtuale, installate prima il pacchetto virtualenv:<\/p>\n<pre><code class=\"language-bash\"># Installs virtualenv\npip install --user virtualenv\n\n# Creates a .venv virtual environment\nvirtualenv .venv<\/code><\/pre>\n<p>Successivamente, dovrai attivare l&#8217;ambiente virtuale. Su Windows, esegui uno dei seguenti comandi a seconda che tu usi cmd o PowerShell (consigliato):<\/p>\n<pre><code class=\"language-bash\">:: PowerShell\n.venvScriptsActivate.ps1<\/code><\/pre>\n<pre><code class=\"language-bash\">:: Cmd\n.venvScriptsactivate.bat<\/code><\/pre>\n<p>Su Linux o MacOs:<\/p>\n<pre><code class=\"language-bash\">source .venv\/bin\/activate<\/code><\/pre>\n<h4>19. Git<\/h4>\n<p>Il <a href=\"https:\/\/kinqsta.com\/it\/blog\/controllo-versioni\/\">controllo delle versioni<\/a> \u00e8 una delle pratiche pi\u00f9 importanti nello sviluppo del software. Ci permette di tenere traccia di tutte le modifiche al codice, di collaborare con altri team di sviluppo e di avere un quadro chiaro del processo di sviluppo nel suo complesso.<\/p>\n<p>Git \u00e8 di gran lunga il <a href=\"https:\/\/kinqsta.com\/it\/blog\/git-contro-github\/\">sistema di controllo delle versioni pi\u00f9 utilizzato<\/a>. Potete installarlo dalla sua <a href=\"https:\/\/git-scm.com\/downloads\" target=\"_blank\" rel=\"noopener noreferrer\">pagina di download<\/a>.<\/p>\n<p>Una volta installato, potete aprire un terminale e dare una prima occhiata a tutte le opzioni disponibili con questo comando:<\/p>\n<pre><code class=\"language-bash\">git help<\/code><\/pre>\n<p>Per creare un repository, usate <code>git init<\/code> e digitate il nome del vostro repo:<\/p>\n<pre><code class=\"language-bash\">git init name_repository\nInitialized empty Git repository in \/home\/daniel\/name_repository\/.git\/<\/code><\/pre>\n<p>Tenete presente che in questo modo verr\u00e0 creato solo un repository Git locale. Se volete avere un repository remoto in cui memorizzare tutte le vostre modifiche online, dovete usare una piattaforma come <a href=\"https:\/\/kinqsta.com\/it\/blog\/cosa-e-github\/\">GitHub<\/a> o <a href=\"https:\/\/kinqsta.com\/it\/blog\/bitbucket-e-github\/\">BitBucket<\/a>.<\/p>\n<p>Per clonare un repository remoto, dovrete utilizzare <code>git clone<\/code> e il sorgente del repo. Nell&#8217;esempio che segue, stiamo clonando un repo di GitHub <a href=\"https:\/\/kinqsta.com\/it\/blog\/commandi-ssh\/\">tramite SSH<\/a>:<\/p>\n<pre><code class=\"language-bash\">git clone <a href=\"mailto:git@github.com\">git@github.com<\/a>:DaniDiazTech\/HTML-site.git\n...\nCloning into 'HTML-site'...\nremote: Enumerating objects: 24, done.\nremote: Counting objects: 100% (24\/24), done.\nremote: Compressing objects: 100% (18\/18), done.\nremote: Total 24 (delta 6), reused 21 (delta 4), pack-reused 0\nReceiving objects: 100% (24\/24), 4.98 MiB | 438.00 KiB\/s, done.\nResolving deltas: 100% (6\/6), done.<\/code><\/pre>\n<h4>20. Docker<\/h4>\n<p>Docker rende pi\u00f9 facile impacchettare e spedire le vostre applicazioni Python come container leggeri, portatili e autosufficienti. Aiuta sia nello sviluppo che nella distribuzione, permettendo a tutti i collaboratori di lavorare con le stesse impostazioni.<\/p>\n<p>Per usare Docker, dovete seguire rigorosamente il processo di installazione indicato per il vostro sistema operativo nella <a href=\"https:\/\/docs.docker.com\/desktop\/linux\/install\/\" target=\"_blank\" rel=\"noopener noreferrer\">pagina Get Docker<\/a>.<\/p>\n<p>Per elencare i comandi Docker disponibili, eseguite questo codice:<\/p>\n<pre><code class=\"language-bash\">docker help <\/code><\/pre>\n<p>Sarebbe difficile spiegare come eseguire Docker compose in questa breve sezione, quindi vi consigliamo di consultare la <a href=\"https:\/\/docs.docker.com\/compose\/gettingstarted\/\" target=\"_blank\" rel=\"noopener noreferrer\">documentazione ufficiale<\/a>.<\/p>\n<h4>21. Grep<\/h4>\n<p>Grep \u00e8 un&#8217;utility a riga di comando essenziale usata per la corrispondenza dei pattern nei file di testo.<\/p>\n<p>Un uso comune \u00e8 quello di trovare quante volte una parola si ripete in un file:<\/p>\n<pre><code class=\"language-bash\">grep -ic python pythondocument.txt\n2<\/code><\/pre>\n<p>Nell&#8217;esempio precedente, otteniamo il numero di volte in cui Python (senza distinzione tra maiuscole e minuscole) \u00e8 presente nel file <code>pythondocument.txt<\/code>.<\/p>\n<p>L&#8217;equivalente di grep per Windows \u00e8 <a href=\"https:\/\/docs.microsoft.com\/en-us\/windows-server\/administration\/windows-commands\/findstr\" target=\"_blank\" rel=\"noopener noreferrer\">findstr<\/a>. Tuttavia, non si tratta dello stesso programma. Potete usare Git Bash per lanciare grep in Windows:<\/p>\n<pre><code class=\"language-bash\">findstr \/i \/C python pythondocument.txt\n2<\/code><\/pre>\n<h4>22. HTTPie<\/h4>\n<p>HTTPie \u00e8 un client HTTP a riga di comando che facilita l&#8217;interazione con i servizi web. Potete usarlo, per esempio, per testare le vostre API Python o per interagire con siti di terze parti.<\/p>\n<p>Questo strumento CLI \u00e8 disponibile in quasi tutti i gestori di pacchetti, come indicato nella <a href=\"https:\/\/httpie.io\/docs\/cli\/installation\" target=\"_blank\" rel=\"noopener noreferrer\">documentazione ufficiale di HTTPie<\/a>. Tuttavia, \u00e8 disponibile anche come pacchetto Python, quindi potete installarlo con pip.<\/p>\n<pre><code class=\"language-bash\">pip install httpie<\/code><\/pre>\n<p>Ecco come interrogare un&#8217;API remota, in questo caso <a href=\"https:\/\/api.github.com\/\">l&#8217;API di GitHub<\/a>:<\/p>\n<pre><code class=\"language-bash\">http GET <a href=\"https:\/\/api.github.com\/users\/danidiaztech\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/api.github.com\/users\/danidiaztech<\/a>\nHTTP\/1.1 200 OK\nAccept-Ranges: bytes\nAccess-Control-Allow-Origin: *\n...<\/code><\/pre>\n<h4>23. ping<\/h4>\n<p><code>ping<\/code> \u00e8 un comando CLI disponibile di default su quasi tutti i sistemi operativi. Funziona inviando pacchetti di dati a un <a href=\"https:\/\/kinqsta.com\/it\/blog\/impossibile-trovare-lindirizzo-ip-del-server\/\">indirizzo IP<\/a> e verificando quanto tempo impiega a trasmettere i dati e a ricevere una risposta, mostrando poi i risultati in millisecondi.<\/p>\n<p>Questo comando si usa principalmente per verificare la connessione tra due macchine, ovvero la vostra macchina e la vostra applicazione Python su un server web:<\/p>\n<pre><code class=\"language-bash\">ping kinqsta.com\nPING kinqsta.com(2606:4700:4400::ac40:917d (2606:4700:4400::ac40:917d)) 56 data bytes\n64 bytes from 2606:4700:4400::ac40:917d (2606:4700:4400::ac40:917d): icmp_seq=1 ttl=50 time=686 ms<\/code><\/pre>\n<h2>Tabella di Riferimento dei Comandi<\/h2>\n<p>Qui di seguito potete trovare un riferimento rapido per tutti i comandi di cui abbiamo parlato:<\/p>\n<table>\n<thead>\n<tr>\n<th><strong>Comando<\/strong><\/th>\n<th><strong>Uso<\/strong><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>choco<\/code><\/td>\n<td>Installa pacchetti su Windows<\/td>\n<\/tr>\n<tr>\n<td><code>brew<\/code><\/td>\n<td>Gestisce pacchetti macOS<\/td>\n<\/tr>\n<tr>\n<td><code>apt, pacman, dnf<\/code><\/td>\n<td>Gestione di pacchetti su diverse distro Linux<\/td>\n<\/tr>\n<tr>\n<td><code>python<\/code><\/td>\n<td>Lancia l&#8217;interprete Python<\/td>\n<\/tr>\n<tr>\n<td><code>pip<\/code><\/td>\n<td>Gestione pacchetti Python<\/td>\n<\/tr>\n<tr>\n<td><code>sudo, runas<\/code><\/td>\n<td>Programma Unix e Windows usato per scalare i permessi<\/td>\n<\/tr>\n<tr>\n<td><code>chmod<\/code><\/td>\n<td>Cambia i permessi dei file<\/td>\n<\/tr>\n<tr>\n<td><code>ls<\/code><\/td>\n<td>Elenca il contenuto di una directory<\/td>\n<\/tr>\n<tr>\n<td><code>pwd<\/code><\/td>\n<td>Stampa la directory di lavoro<\/td>\n<\/tr>\n<tr>\n<td><code>cp<\/code><\/td>\n<td>Copia file e directory<\/td>\n<\/tr>\n<tr>\n<td><code>cat<\/code><\/td>\n<td>Stampa i contenuti dei file<\/td>\n<\/tr>\n<tr>\n<td><code>mv, move<\/code><\/td>\n<td>Sposta (rinomina) file e directory<\/td>\n<\/tr>\n<tr>\n<td><code>rm, del<\/code><\/td>\n<td>Elimina file e directory<\/td>\n<\/tr>\n<tr>\n<td><code>exit<\/code><\/td>\n<td>Esce dalla sessione corrente della shell<\/td>\n<\/tr>\n<tr>\n<td><code>vim, neovim<\/code><\/td>\n<td>Modifica efficiente del testo<\/td>\n<\/tr>\n<tr>\n<td><code>nano<\/code><\/td>\n<td>Editor di testo per modifiche rapide<\/td>\n<\/tr>\n<tr>\n<td><code>emacs<\/code><\/td>\n<td>L&#8217;editor pi\u00f9 personalizzabile<\/td>\n<\/tr>\n<tr>\n<td><code>virtualenv, venv<\/code><\/td>\n<td>Generatori di ambienti virtuali<\/td>\n<\/tr>\n<tr>\n<td><code>git<\/code><\/td>\n<td>Sistema di controllo di versione<\/td>\n<\/tr>\n<tr>\n<td><code>docker<\/code><\/td>\n<td>Containerizzare le applicazioni<\/td>\n<\/tr>\n<tr>\n<td><code>grep<\/code><\/td>\n<td>Utilit\u00e0 di corrispondenza dei pattern<\/td>\n<\/tr>\n<tr>\n<td><code>http<\/code><\/td>\n<td>Utilit\u00e0 di test dei servizi web<\/td>\n<\/tr>\n<tr>\n<td><code>ping<\/code><\/td>\n<td>Verifica della connettivit\u00e0 di rete<\/td>\n<\/tr>\n<tr>\n<td><code>kill<\/code><\/td>\n<td>Termina i programmi<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Riepilogo<\/h2>\n<p><a href=\"https:\/\/kinqsta.com\/it\/blog\/programmazione-orientata-agli-oggetti-python\/\">Python<\/a> \u00e8 uno dei linguaggi di programmazione pi\u00f9 facili da imparare. L&#8217;unico ostacolo \u00e8 approcciarsi alla riga di comando senza aver compreso i comandi di cui avete bisogno.<br \/>\n<br \/>\nIn questo articolo avete scoperto la riga di comando e alcuni dei comandi pi\u00f9 utilizzati per lo sviluppo di Python.<\/p>\n<p>Quali altri comandi avete trovato utili nello sviluppo di Python? Condivideteli nei commenti qui sotto!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Python \u00e8 al momento uno dei linguaggi di programmazione pi\u00f9 popolari. \u00c8 un linguaggio potente ma semplice che pu\u00f2 essere utilizzato in quasi tutti gli ambienti &#8230;<\/p>\n","protected":false},"author":181,"featured_media":59038,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[25980,25596,32,67],"topic":[26215],"class_list":["post-58801","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-linea-di-comando","tag-python","tag-sviluppo-web","tag-webdev","topic-python"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente<\/title>\n<meta name=\"description\" content=\"Lo sviluppo del software diventa pi\u00f9 familiare se si conoscono i comandi pi\u00f9 usati per lo sviluppo Python su Windows, Mac e Linux.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente\" \/>\n<meta property=\"og:description\" content=\"Lo sviluppo del software diventa pi\u00f9 familiare se si conoscono i comandi pi\u00f9 usati per lo sviluppo Python su Windows, Mac e Linux.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinstaitalia\/\" \/>\n<meta property=\"article:published_time\" content=\"2022-08-08T06:53:36+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-02-21T16:37:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Daniel Diaz\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Lo sviluppo del software diventa pi\u00f9 familiare se si conoscono i comandi pi\u00f9 usati per lo sviluppo Python su Windows, Mac e Linux.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg\" \/>\n<meta name=\"twitter:creator\" content=\"@DaniDiazTech\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_IT\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daniel Diaz\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"19 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/\"},\"author\":{\"name\":\"Daniel Diaz\",\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/person\/38f3b6be2225ef58d7914f1b6a70fcb2\"},\"headline\":\"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente\",\"datePublished\":\"2022-08-08T06:53:36+00:00\",\"dateModified\":\"2023-02-21T16:37:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/\"},\"wordCount\":3296,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/it\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg\",\"keywords\":[\"linea di comando\",\"python\",\"sviluppo web\",\"webdev\"],\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/\",\"url\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/\",\"name\":\"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente\",\"isPartOf\":{\"@id\":\"https:\/\/kinqsta.com\/it\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg\",\"datePublished\":\"2022-08-08T06:53:36+00:00\",\"dateModified\":\"2023-02-21T16:37:34+00:00\",\"description\":\"Lo sviluppo del software diventa pi\u00f9 familiare se si conoscono i comandi pi\u00f9 usati per lo sviluppo Python su Windows, Mac e Linux.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#primaryimage\",\"url\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg\",\"contentUrl\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg\",\"width\":1460,\"height\":730,\"caption\":\"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinqsta.com\/it\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python\",\"item\":\"https:\/\/kinqsta.com\/it\/argomenti\/python\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinqsta.com\/it\/#website\",\"url\":\"https:\/\/kinqsta.com\/it\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluzioni di hosting premium, veloci e sicure\",\"publisher\":{\"@id\":\"https:\/\/kinqsta.com\/it\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinqsta.com\/it\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinqsta.com\/it\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinqsta.com\/it\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinstaitalia\/\",\"https:\/\/x.com\/Kinsta_IT\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/person\/38f3b6be2225ef58d7914f1b6a70fcb2\",\"name\":\"Daniel Diaz\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/kinqsta.com\/it\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/4541784060a3b28ffb67a5da67b1f7e7?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/4541784060a3b28ffb67a5da67b1f7e7?s=96&d=mm&r=g\",\"caption\":\"Daniel Diaz\"},\"description\":\"Daniel is a self-taught Python Developer, Technical Writer, and long-life learner. He enjoys creating software from scratch and explaining this process through stunning articles. Follow him on Twitter: @DaniDiazTech\",\"sameAs\":[\"https:\/\/developerroad.herokuapp.com\/\",\"https:\/\/www.linkedin.com\/in\/danidiaztech\",\"https:\/\/x.com\/DaniDiazTech\"],\"url\":\"https:\/\/kinqsta.com\/it\/blog\/author\/danidiaztech\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente","description":"Lo sviluppo del software diventa pi\u00f9 familiare se si conoscono i comandi pi\u00f9 usati per lo sviluppo Python su Windows, Mac e Linux.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/","og_locale":"it_IT","og_type":"article","og_title":"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente","og_description":"Lo sviluppo del software diventa pi\u00f9 familiare se si conoscono i comandi pi\u00f9 usati per lo sviluppo Python su Windows, Mac e Linux.","og_url":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstaitalia\/","article_published_time":"2022-08-08T06:53:36+00:00","article_modified_time":"2023-02-21T16:37:34+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg","type":"image\/jpeg"}],"author":"Daniel Diaz","twitter_card":"summary_large_image","twitter_description":"Lo sviluppo del software diventa pi\u00f9 familiare se si conoscono i comandi pi\u00f9 usati per lo sviluppo Python su Windows, Mac e Linux.","twitter_image":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg","twitter_creator":"@DaniDiazTech","twitter_site":"@Kinsta_IT","twitter_misc":{"Scritto da":"Daniel Diaz","Tempo di lettura stimato":"19 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#article","isPartOf":{"@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/"},"author":{"name":"Daniel Diaz","@id":"https:\/\/kinqsta.com\/it\/#\/schema\/person\/38f3b6be2225ef58d7914f1b6a70fcb2"},"headline":"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente","datePublished":"2022-08-08T06:53:36+00:00","dateModified":"2023-02-21T16:37:34+00:00","mainEntityOfPage":{"@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/"},"wordCount":3296,"commentCount":0,"publisher":{"@id":"https:\/\/kinqsta.com\/it\/#organization"},"image":{"@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg","keywords":["linea di comando","python","sviluppo web","webdev"],"inLanguage":"it-IT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/","url":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/","name":"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente","isPartOf":{"@id":"https:\/\/kinqsta.com\/it\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#primaryimage"},"image":{"@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#primaryimage"},"thumbnailUrl":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg","datePublished":"2022-08-08T06:53:36+00:00","dateModified":"2023-02-21T16:37:34+00:00","description":"Lo sviluppo del software diventa pi\u00f9 familiare se si conoscono i comandi pi\u00f9 usati per lo sviluppo Python su Windows, Mac e Linux.","breadcrumb":{"@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinqsta.com\/it\/blog\/comandi-python\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#primaryimage","url":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg","contentUrl":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2022\/08\/comandi-python.jpeg","width":1460,"height":730,"caption":"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente"},{"@type":"BreadcrumbList","@id":"https:\/\/kinqsta.com\/it\/blog\/comandi-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinqsta.com\/it\/"},{"@type":"ListItem","position":2,"name":"Python","item":"https:\/\/kinqsta.com\/it\/argomenti\/python\/"},{"@type":"ListItem","position":3,"name":"Pi\u00f9 di 20 Comandi Python da Conoscere Assolutamente"}]},{"@type":"WebSite","@id":"https:\/\/kinqsta.com\/it\/#website","url":"https:\/\/kinqsta.com\/it\/","name":"Kinsta\u00ae","description":"Soluzioni di hosting premium, veloci e sicure","publisher":{"@id":"https:\/\/kinqsta.com\/it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinqsta.com\/it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/kinqsta.com\/it\/#organization","name":"Kinsta","url":"https:\/\/kinqsta.com\/it\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinqsta.com\/it\/#\/schema\/logo\/image\/","url":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinqsta.com\/it\/wp-content\/uploads\/sites\/2\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinqsta.com\/it\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinstaitalia\/","https:\/\/x.com\/Kinsta_IT","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinqsta.com\/it\/#\/schema\/person\/38f3b6be2225ef58d7914f1b6a70fcb2","name":"Daniel Diaz","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/kinqsta.com\/it\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/4541784060a3b28ffb67a5da67b1f7e7?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4541784060a3b28ffb67a5da67b1f7e7?s=96&d=mm&r=g","caption":"Daniel Diaz"},"description":"Daniel is a self-taught Python Developer, Technical Writer, and long-life learner. He enjoys creating software from scratch and explaining this process through stunning articles. Follow him on Twitter: @DaniDiazTech","sameAs":["https:\/\/developerroad.herokuapp.com\/","https:\/\/www.linkedin.com\/in\/danidiaztech","https:\/\/x.com\/DaniDiazTech"],"url":"https:\/\/kinqsta.com\/it\/blog\/author\/danidiaztech\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/posts\/58801","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/users\/181"}],"replies":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/comments?post=58801"}],"version-history":[{"count":12,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/posts\/58801\/revisions"}],"predecessor-version":[{"id":59042,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/posts\/58801\/revisions\/59042"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/en"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/it"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/pt"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/fr"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/de"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/es"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/jp"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/nl"},{"embeddable":true,"hreflang":"sv","title":"Swedish","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/se"},{"embeddable":true,"hreflang":"da","title":"Danish","href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/translations\/dk"},{"href":"https:\/\/kinqsta.com\/it\/wp-json\/kinsta\/v1\/posts\/58801\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/media\/59038"}],"wp:attachment":[{"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/media?parent=58801"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/tags?post=58801"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinqsta.com\/it\/wp-json\/wp\/v2\/topic?post=58801"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}