Mais de 20 comandos essenciais do Python que você deve conhecer
Publicados: 2022-08-03Atualmente, o Python é uma das linguagens de programação mais populares. É uma linguagem poderosa e simples que pode ser usada em quase qualquer ambiente de desenvolvimento.
Uma pesquisa do Stack Overflow de 2021 revela o Python como a linguagem de programação com a qual a maioria dos desenvolvedores mais deseja trabalhar.
Graças a ferramentas como Jupyter Notebook, Google Colaboratory e compiladores online, você pode começar a usar essa linguagem sem ter que se preocupar em instalar nada.
No entanto, se você quiser ir além e aproveitar o verdadeiro poder de uma linguagem de uso geral como o Python (especialmente criando aplicativos complexos), mais cedo ou mais tarde você precisará aprender a usar a CLI, ou interface de linha de comando.
A maioria dos desenvolvedores concorda que uma das partes mais intimidantes de aprender Python é a CLI. Mas com apenas alguns comandos, você o dominará em pouco tempo.
Neste artigo, você aprenderá os comandos mais úteis para o desenvolvimento em Python.
O que é a interface de linha de comando?
A interface de linha de comando - geralmente abreviada para CLI - é um programa baseado em texto usado para executar programas e realizar tarefas relacionadas ao sistema operacional (SO), como criar e gerenciar arquivos.
As CLIs aceitam entradas do teclado na forma de comandos e as passam para um shell ou interpretador de comandos. Esses shells interpretam os comandos dados pelo usuário, os executam e retornam um resultado geralmente chamado de saída.
Uma CLI pode executar diferentes shells. Esta captura de tela mostra duas CLIs diferentes, uma com o shell do Python e outra com o Bash:
Esses dois conceitos geralmente são confundidos, então aqui está o detalhamento:
- CLI é a interface baseada em texto onde você digita comandos e obtém a saída desses comandos. Ele pode executar diferentes shells.
- Um shell é um interpretador de comandos capaz de interagir com o sistema operacional.
Acredite ou não, todo programa que seu sistema está executando envolve um comando. As janelas (GUI) com as quais você interage todos os dias são compostas de ligações que acionam comandos que permitem que você interaja com o sistema operacional.
Você precisa da CLI no desenvolvimento do Python?
Para ser um desenvolvedor full-stack eficaz, você precisará ter um conhecimento sólido da linha de comando. Isso ocorre porque a maioria das estruturas de back-end exige alguma forma de interação direta com uma CLI e, se você planeja implantar um aplicativo por conta própria, a linha de comando será sua melhor amiga.
Atualmente, você pode executar o Python a partir de inúmeros serviços online, além de IDEs que facilitam muito a execução de seus programas. Mas se você gosta de desenvolvimento web – especialmente back-end, automação de tarefas, blockchain, uso de um computador remoto via SSH ou gerenciamento de ferramentas compatíveis com Python como o Docker, você definitivamente precisará lidar com a CLI.
Na verdade, o Python tem muitas bibliotecas para criar aplicativos CLI, como Typer, Argsparse e Click. Você pode deixar de ser apenas um usuário CLI para ser um criador de seus próprios aplicativos CLI! Isso mostra a forte conexão entre ambientes CLI e Python.
Depois de dominar a CLI, será muito mais fácil executar suas tarefas como programador Python e você verá uma vantagem ao usar outras linguagens de programação como PHP, C, C++ ou Java.
Introdução ao CLI
Dependendo de qual sistema operacional você está executando, você encontrará diferenças em como você usa a linha de comando. Cada sistema operacional tem sua própria maneira de abrir e interagir com uma CLI por causa de suas diferentes estruturas de organização de arquivos e shells de comando padrão.
Vamos dar uma olhada nos três sistemas operacionais mais usados pelos desenvolvedores: Windows, Mac e Linux.
janelas
O Windows é o sistema operacional de desktop mais popular, principalmente por causa de seu preço e facilidade de uso. Se você deseja acessar a CLI no Windows, deve abrir o programa “Prompt de comando” ou “Windows Powershell”.
Lembre-se de que o Windows usa \
para caminhos em vez de /
. Você deve ter isso em mente ao navegar pelos diretórios.
Também no Windows, você tem a alternativa de instalar o Git Bash, uma linha de comando que emula o comportamento do shell Bash no Windows. Isso tornaria a maioria dos comandos Unix mostrados abaixo compatíveis com seu sistema.
Mac
Quanto ao Mac, a linha de comando é acessível a partir de um aplicativo embutido chamado “Terminal”. Você pode procurá-lo com o Launchpad ou encontrá-lo na pasta “Utilitários” em “aplicativos”.
Linux
No Linux, você tem várias opções diferentes dependendo da distribuição que você usa, mas o comando “Ctrl + Alt + T” normalmente aciona o terminal padrão em seu sistema.
Agora, você deve ter uma janela semelhante à mostrada abaixo:
Mais de 20 comandos CLI mais úteis para desenvolvimento em Python
Depois de abrir sua CLI, é hora de mergulhar nos principais comandos do shell que tornarão sua vida como desenvolvedor Python muito mais fácil.
Comandos de instalação
Você provavelmente já se deparou com um milhão de maneiras de instalar o Python. Mas às vezes é muito mais conveniente fazer isso com apenas um comando.
Aqui estão os diferentes comandos que ajudarão você a instalar o Python em diferentes sistemas operacionais.
1. Chocolate
No Windows, você não tem gerenciador de pacotes por padrão. Uma opção para superar isso é o Chocolatey, que fornece programas para instalar diretamente da linha de comando - obviamente incluindo o Python.
Certifique-se de instalar o Chocolatey antes de executar o seguinte comando:
choco install python --pre
2. Homebrew e Pyenv
O macOS vem com o Python 2.7 instalado por padrão. No entanto, o Python 2.7 agora está obsoleto. Toda a comunidade mudou para o Python 3. Para gerenciar suas versões do Python com eficiência, você pode usar um programa como pyenv.
Abra uma linha de comando e instale a versão mais recente do Homebrew (um gerenciador de pacotes como Chocolatey) com o seguinte comando:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Então você pode instalar o pyenv com este comando simples:
brew install pyenv
Você pode instalar uma versão específica do Python e defini-la como o executável global do Python em vez do Python 2:
pyenv install 3.10 # Version you want pyenv global 3.10.4 # Sets that version as default
Agora, se você chamar Python, será a versão que você definiu com pyenv:
python # Python 3.10.4 .... # >>>
3. apt, pacman e dnf
Com o uso extensivo do Python para software de código aberto, um grande número de distribuições Linux vem com o Python pré-instalado. Se o seu sistema não, você pode instalar o Python com um gerenciador de pacotes.
Em distribuições baseadas em Debian (Ubuntu, Linux Mint, Kali Linux), você usará o apt, que significa “ferramenta de pacote avançada”:
sudo apt update sudo apt install python3
Além disso, se você deseja definir o Python 3 como seu interpretador padrão do Python, pode usar o seguinte comando:
sudo apt install python-is-python3
Em distribuições baseadas em Arch, você pode usar o gerenciador de pacotes oficial pacman:
sudo pacman -S python
Em distribuições Linux baseadas em Fedora e RPM (Red Hat, CentOS), você usa dnf:
sudo dnf install python3
Comandos do intérprete
Vamos revisar rapidamente os principais sinalizadores — opções de linha de comando — do comando Python e seu gerenciador de pacotes, pip.
4. píton
O comando python
possui vários sinalizadores, ou seja, opções que modificam o comportamento da execução do código.
Antes de tudo, para executar um arquivo Python, basta chamar o interpretador e adicionar o nome do arquivo, incluindo a extensão .py
:
python helloworld.py
Se você precisa se lembrar do que um sinalizador faz, você pode usar o sinalizador de help
em qualquer uma dessas 3 apresentações:
python -? python -h python --help
Para imprimir (ver) a versão do Python que você está executando, use o seguinte:
python -V python --version
Se você deseja executar o código Python sem abrir e editar um arquivo .py
, você pode executá-lo diretamente do seu terminal com o sinalizador de comando:
# Hello, World! python -c "print('Hello, World!')"
O sinalizador m
executa um módulo Python como um script. Isso é realmente útil quando você deseja criar um ambiente virtual com o módulo venv integrado :
python -m venv .venv
5. pip
O comando pip procura pacotes no Python Package Index (PyPI), resolve dependências e instala a versão do pacote que você indicou.
Para instalar um pacote Python, basta digitar pip
e o nome do pacote que deseja instalar.
O comando a seguir instalará a versão mais recente do pacote:
pip install django
Se você quiser uma versão específica, execute o seguinte comando:
# pip install package==version pip install django==4.0.4
Ao trabalhar em projetos colaborativos, você precisa acompanhar as dependências, geralmente com um arquivo de requisitos. Com o sinalizador r
, você pode ler e instalar pacotes de um arquivo de texto:
pip install -r requirements.txt
Outro recurso comumente usado é o sinalizador de freeze
. Ele é usado para gerar uma lista das versões de pacote que você instalou em seu ambiente. Você pode usá-lo para gerar suas dependências em um arquivo de requisitos:
pip freeze >> requirements.txt
Comandos de permissão
Python é realmente bom em scripts e manipulação de arquivos. Para trabalhar com essas tarefas, você precisa ter algum conhecimento de como as permissões funcionam em seu sistema operacional.
6. sudo, runas
Em sistemas baseados em Unix (macOS, Linux, BSD), você deve ter permissões de superusuário para realizar certas tarefas, como instalar um programa, como fizemos acima.
O comando sudo permite que você obtenha brevemente permissões de administrador para executar um desses comandos.
Abaixo está um exemplo de instalação do ueberzug (um pacote Python de visualização de imagem) globalmente:
sudo pip install ueberzug
O equivalente do Windows é o Runas, que executa um script como um usuário diferente ou como administrador:
runas /noprofile /user:Administrator cmd
Existem também outros projetos como o Gsudo, que torna o processo de elevação de permissão muito mais fácil do que com outros comandos internos do Windows:
:: Installs gsudo choco install gsudo :: Reads a file named MySecretFile.txt gsudo type MySecretFile.txt
7. chmod
chmod
é usado para alterar as permissões de arquivos e diretórios no Unix.
Um uso comum é tornar um script Python executável:
# Makes mypythonscript.py executablechmod +x mypythonscript.py
Depois de tornar um script executável, você pode executá-lo diretamente usando a notação ./
:
# Runs the script ./mypythonscript.py
Comandos de navegação
Navegar no sistema de arquivos em uma interface de linha de comando é uma tarefa diária para desenvolvedores Python. Aqui estão alguns comandos essenciais usados para navegar em seu sistema ao programar com Python.
8. ls, dir
Para listar o conteúdo de um diretório (pasta), você deve usar o comando ls
(Unix) ou dir
(Windows). Este foi provavelmente o primeiro comando que você aprendeu ao encontrar a CLI pela primeira vez.
Segue a sintaxe utilizada:
ls # Shows the contents of the working directory ls mydirectory
E aqui está um exemplo do conteúdo de uma pasta em um sistema de arquivos local:
ls test_python/ # classes_error.py radius.py test-Django
Este comando tem muitos sinalizadores úteis. Na verdade, muitas vezes é alias para ls -al
para visualizar arquivos ocultos (aqueles com um ponto no início) e o modo, tamanho e data de cada arquivo:
alias ls="ls -al" # Results total 20 drwx------ 3 daniel daniel 4096 ene 16 19:13 . drwxr-xr-x 36 daniel daniel 4096 may 17 22:18 .. -rw------- 1 daniel daniel 32 nov 17 2020 classes_error.py -rw------- 1 daniel daniel 327 nov 10 2020 radius.py drwx------ 4 daniel daniel 4096 ene 16 01:07 test-Django
Quanto ao Windows, você pode usar ls
usando o Git Bash ou pode usar o comando dir
interno:
dir
9. pwd
pwd
significa “diretório de trabalho de impressão” e faz exatamente isso: fornece o caminho completo do diretório em que você está:
pwd # /home/daniel/github/HTML-site/images
Se você já se perdeu em seu terminal, este comando é um salva-vidas.
Você pode obter a mesma saída no Windows usando o comando cd
sem parâmetros (observe que o mesmo comando no Unix o levaria ao diretório inicial):
# Only on Windows cd # D:\Folder\subFolder
10. cp
Copiar arquivos com um gerenciador gráfico de arquivos é intuitivo, mas ineficiente. Com este comando, você pode copiar qualquer tipo de arquivo em seu sistema:
cp old_file.txt copy_old_file.txt
Para copiar todo o conteúdo de um diretório, você deve usar cp -r
:
cp -r originaldirectory/ newdir
O equivalente para cp
no Windows é copy
:
copy old_file.txt copy_old_file.txt /a
11. gato, tipo
Para imprimir o conteúdo de um arquivo de texto no terminal sem abrir o arquivo com um editor, você pode usar cat
, more
ou less
no Unix e type
no Windows:
cat old_file.txt # Unix type old_file.txt # Windows # Content Hi there I hope you're enjoying the article ... as much as I've enjoyed writing it! End of the sample.
12. mv, mover
O comando mv
move arquivos e diretórios de um diretório para outro — basicamente um recortar e colar — ou renomeia um arquivo se o destino não existir:
# Rename files mv source_file.txt renamed_file.txt
# File to another directory mv renamed_file.txt newdir/
Você também pode usar a correspondência de padrões para mover arquivos. Por exemplo, mova todos os arquivos .py
para outra pasta:
mv *.py mypythondir/
Um comando equivalente no Windows é move
, que tem quase a mesma funcionalidade que o acima:
# Windows move source_file.txt renamed_file.txt
13. rm, del
Você pode usar o comando rm
para remover arquivos e diretórios.
Para excluir um arquivo, não um diretório, você usaria:
rm file_to_remove.txt
Se você deseja excluir um diretório vazio, você pode usar o sinalizador recursivo ( -r
):
rm -r dir_to_remove/
Para remover um diretório com conteúdo dentro, você usaria os sinalizadores force ( -f
) e recursivos:
rm -rf dir_with_content/
De forma semelhante, você encontra del
no Windows. Seja ainda mais cauteloso, pois este comando não possui os sinalizadores de prevenção vistos acima:
del \mywindowsdir
14. saída
Depois de terminar sua programação em Python, você poderá sair da sua sessão de shell. Na maioria dos casos, isso também fecharia o terminal que você está usando:
exit
Observe que este comando funciona tanto no Windows quanto no Unix.
Editores de linha de comando
Depois de se acostumar com a linha de comando, você descobrirá que é mais lento mudar de janela ou até mesmo usar o mouse para editar seu código.
Ter a capacidade de codificar enquanto você permanece na linha de comando não é apenas uma ótima maneira de economizar tempo, mas também fará você parecer um super-herói entre seus colegas de equipe!
Aqui estão alguns dos editores de linha de comando mais usados.
15. Vim/Neovim
O Vim e seu descendente, Neovim, são editores de texto baseados em teclado que são usados principalmente na linha de comando. De acordo com uma pesquisa do Stack Overflow de 2021, eles estão em 4º e 1º entre os editores mais amados pelos desenvolvedores.
O Vim está pré-instalado no Linux e no macOS. Na verdade, é o editor que você mais encontrará ao interagir com servidores. No Windows, você precisará instalá-lo usando o instalador executável da página do Vim.
Agora, você pode aproveitar o poder do Vim apenas digitando seu nome na linha de comando:
vim
Isso acionará uma interface baseada em texto com várias combinações de teclado para cada ação que você possa precisar ao codificar em Python.
O Vim tem uma curva de aprendizado íngreme, mas depois de dominá-lo, você não mudará para outra coisa tão cedo.
16. Nano
Nano é outro editor de texto de linha de comando usado principalmente para edições rápidas.
Digamos que você tenha introduzido um erro de sintaxe em seu código, mas não queira abrir seu editor para corrigi-lo. O Nano ajuda você a corrigi-lo diretamente da sua CLI:
nano
17. Emacs
O Emacs é um dos editores de texto mais extensíveis e personalizáveis que você pode encontrar. Ele tem uma seção inteira dedicada à programação Python, onde você encontrará vários plugins para aprimorar sua experiência de desenvolvimento.
O Emacs está disponível em quase todos os sistemas operacionais, portanto, se você ainda não o instalou, confira as instruções de download.
Para abrir o Emacs a partir do tipo de linha de comando, use o sinalizador de sistema sem janela ( -nw
):
emacs -nw
Ferramentas de desenvolvimento
O desenvolvimento do Python implica não apenas na codificação, mas também no manuseio de ferramentas adicionais, como ambientes virtuais, sistemas de controle de versão e ferramentas de implantação.
Aprendendo os comandos abaixo, você terá uma vantagem no desenvolvimento de qualquer tipo de aplicativo com Python.
18. virtualenv/venv
Os ambientes virtuais são uma técnica crucial usada no desenvolvimento do Python. Com eles, você pode isolar os pacotes usados em diferentes projetos em uma pasta leve, geralmente chamada .venv
.
Com o Python 3.3 ou superior, você pode usar o módulo venv integrado para criar um ambiente virtual:
# .venv being the name of the virtual environment python -m venv .venv
virtualenv é um projeto externo que é mais rápido e extensível em comparação com a opção integrada. Para criar um ambiente virtual, primeiro instale o pacote virtualenv:
# Installs virtualenv pip install --user virtualenv # Creates a .venv virtual environment virtualenv .venv
Em seguida, você precisará ativar o ambiente virtual. No Windows, execute um dos seguintes comandos com base no uso de cmd ou PowerShell (recomendado):
:: PowerShell .venv\Scripts\Activate.ps1
:: Cmd .venv\Scripts\activate.bat
No Linux ou macOs:
source .venv/bin/activate
19. Git
O controle de versão é uma das práticas mais importantes no desenvolvimento de software. Ele nos permite acompanhar todas as modificações de código, colaborar com outros desenvolvedores e visualizar uma imagem clara do processo de desenvolvimento como um todo.
Git é de longe o sistema de controle de versão mais usado. Você pode instalá-lo a partir de sua página de download.
Uma vez instalado, você pode abrir um terminal e obter uma primeira olhada em todas as opções disponíveis com este comando:
git help
Para criar um repositório, use git init
e digite o nome do seu repositório:
git init name_repository Initialized empty Git repository in /home/daniel/name_repository/.git/
Observe que isso criará apenas um repositório Git local. Se você deseja ter um repositório remoto onde armazena todas as suas alterações online, deve usar uma plataforma como GitHub ou BitBucket.
Para clonar um repositório remoto, você usará git clone
e a fonte do repositório. No exemplo abaixo, estamos clonando um repositório do GitHub por SSH:
git clone [email protected] :DaniDiazTech/HTML-site.git ... Cloning into 'HTML-site'... remote: Enumerating objects: 24, done. remote: Counting objects: 100% (24/24), done. remote: Compressing objects: 100% (18/18), done. remote: Total 24 (delta 6), reused 21 (delta 4), pack-reused 0 Receiving objects: 100% (24/24), 4.98 MiB | 438.00 KiB/s, done. Resolving deltas: 100% (6/6), done.
20. Janela de encaixe
O Docker torna mais fácil empacotar e enviar seus aplicativos Python como contêineres leves, portáteis e autossuficientes. Ajuda tanto no desenvolvimento quanto na implantação, permitindo que todos os colaboradores trabalhem com as mesmas configurações.
Para usar o Docker, você deve seguir rigorosamente o processo de instalação mostrado para seu sistema operacional na página Get Docker.
Para listar os comandos do Docker disponíveis, execute o seguinte:
docker help
Seria difícil explicar como executar o Docker compose nesta seção restrita, portanto, verifique a documentação oficial.
21. Grep
Grep é um utilitário de linha de comando essencial usado para correspondência de padrões em arquivos de texto simples.
Um uso comum é descobrir quantas vezes uma palavra se repete em um arquivo:
grep -ic python pythondocument.txt 2
No exemplo acima, obtemos o número de vezes que o Python (não diferencia maiúsculas de minúsculas) é encontrado no arquivo pythondocument.txt
.
O equivalente do Windows ao grep é findstr. No entanto, não é exatamente o mesmo programa. Você pode usar o Git Bash para utilizar o grep no Windows:
findstr /i /C python pythondocument.txt 2
22. HTTPie
HTTPie é um cliente HTTP de linha de comando que facilita a interação com serviços da web. Você pode usá-lo, por exemplo, para testar suas APIs Python ou interagir com sites de terceiros.
Esta ferramenta CLI está disponível em quase todos os gerenciadores de pacotes, conforme mostrado na documentação oficial do HTTPie. No entanto, também está disponível como um pacote Python, para que você possa instalá-lo com pip.
pip install httpie
Veja como você consulta uma API remota — neste caso, a API do GitHub:
http GET https://api.github.com/users/danidiaztech HTTP/1.1 200 OK Accept-Ranges: bytes Access-Control-Allow-Origin: * ...
23. ping
ping
é um comando CLI disponível por padrão em praticamente qualquer sistema operacional. Ele funciona enviando pacotes de dados para um endereço IP e testando quanto tempo leva para transmitir dados e receber uma resposta, depois mostra os resultados em milissegundos
Este comando é usado principalmente para verificar a conexão entre duas máquinas, ou seja, sua máquina e seu aplicativo Python em um servidor web:
ping kinsta.com PING kinsta.com(2606:4700:4400::ac40:917d (2606:4700:4400::ac40:917d)) 56 data bytes 64 bytes from 2606:4700:4400::ac40:917d (2606:4700:4400::ac40:917d): icmp_seq=1 ttl=50 time=686 ms
Tabela de referência de comando
Abaixo, você pode encontrar uma referência rápida para cada comando que discutimos:
Comando | Uso |
---|---|
choco | Instala pacotes no Windows |
brew | gerenciador de pacotes macOS |
apt, pacman, dnf | Gerenciador de pacotes em diferentes distribuições Linux |
python | Executa o interpretador Python |
pip | gerenciador de pacotes Python |
sudo, runas | Programa Unix e Windows usado para dimensionar permissões |
chmod | Altera as permissões do arquivo |
ls | Lista o conteúdo de um diretório |
pwd | Imprime o diretório de trabalho |
cp | Copia arquivos e diretórios |
cat | Imprime o conteúdo do arquivo |
mv, move | Move (renomeia) arquivos e diretórios |
rm, del | Remover arquivos e diretórios |
exit | sai da sessão de shell atual |
vim, neovim | Edição de texto eficiente |
nano | Editor de texto para edições rápidas |
emacs | O editor mais personalizável |
virtualenv, venv | Geradores de ambiente virtual |
git | Sistema de controle de versão |
docker | Conteinerizar aplicativos |
grep | Utilitário de correspondência de padrões |
http | Utilitário de teste de serviço da Web |
ping | Testa a conectividade de rede |
kill | Termina programas |
Resumo
Python é uma das linguagens de programação mais fáceis de aprender. O único obstáculo que você encontrará é quando você entra na linha de comando sem entender os comandos necessários.
Neste artigo, você aprendeu sobre a linha de comando e alguns de seus comandos mais populares usados para desenvolvimento em Python.
Que outros comandos você achou úteis no desenvolvimento do Python? Compartilhe-os nos comentários abaixo!