你應該知道的20多個Python常見命令大全

你應該知道的20多個Python常見命令大全

Python是目前最流行的程式語言之一。它是一種強大而簡單的語言,幾乎可以在任何開發環境中使用。

2021年Stack Overflow調查顯示,Python是大多數開發人員最想使用的程式語言。

Stack Overflow調查

Stack Overflow調查

藉助Jupyter Notebook、Google Colaboratory和線上編譯器等工具,您可以開始使用這種語言,而無需擔心安裝任何東西。

但是,如果您想更進一步並享受Python等通用語言的真正力量(尤其是通過建立複雜的應用程式),遲早您需要學習使用CLI或命令列介面。

大多數開發人員都同意,學習Python中最令人生畏的部分之一是CLI。但是,只需幾個命令,您就可以立即掌握它。

在本文中,您將學習Python開發中最有用的命令。

  1. 什麼是命令列介面?
  2. CLI簡介
  3. 用於Python開發的20多個最有用的CLI命令
  4. 命令參考表

什麼是命令列介面?

命令列介面(通常縮寫為CLI)是一種基於文字的程式,用於執行程式並執行與作業系統 (OS) 相關的任務,例如建立和管理檔案。

CLI以命令的形式接受來自鍵盤的輸入,並將它們傳遞給shell或命令直譯器。這些shell解釋使用者給出的命令,執行它們並返回通常稱為輸出的結果。

CLI可以執行不同的shell。此螢幕截圖顯示了兩個不同的CLI,一個使用Python shell,另一個使用Bash:

Python和Bash shell

Python和Bash shell

這兩個概念經常被混淆,所以這裡是細分:

  • CLI是基於文字的介面,您可以在其中鍵入命令並獲取這些命令的輸出。它可以執行不同的shell。
  • shell是一種能夠與作業系統互動的命令直譯器。

信不信由你,系統執行的每個程式都包含一個命令。您每天與之互動的視窗 ( GUI ) 由觸發命令的繫結組成,這些命令讓您可以與作業系統進行互動

Info 命令只不過是給計算機作業系統的特定命令。

你在Python開發中需要CLI嗎?

要成為一名有效的全棧開發人員,您需要對命令列有紮實的瞭解。這是因為大多數後端框架需要直接與CLI進行某種形式的互動,如果您打算自己部署應用程式,命令列將是您最好的朋友。

如今,您可以從無數線上服務以及IDE中執行Python,從而更輕鬆地執行您的程式。但如果你從事Web開發——尤其是後端、任務自動化、區塊鏈、通過SSH使用遠端計算機,或者管理Python友好的工具(如Docker),你肯定需要處理CLI。

事實上,Python有大量的庫來構建CLI應用程式,例如Typer、Argsparse和Click。您可以從一個CLI使用者轉變為您自己的CLI應用程式的建立者!這展示了CLI環境和Python之間的緊密聯絡。

掌握CLI後,作為Python程式設計師執行任務會容易得多,並且在使用PHP、C、C++ 或Java等其他程式語言時會看到優勢。

CLI簡介

根據您執行的作業系統,您會發現使用命令列的方式有所不同。每個作業系統都有自己的開啟CLI並與之互動的方式,因為它們的檔案組織結構和預設命令shell不同。

讓我們來看看開發人員最常用的三種作業系統:Windows、Mac和Linux。

Windows

Windows是最流行的桌面作業系統,主要是因為它的價格標籤和易用性。如果要在Windows中訪問CLI,則必須開啟程式“命令提示符”或“Windows Powershell”。

請記住,Windows使用\路徑而不是/. 瀏覽目錄時應牢記這一點。

同樣在Windows上,您可以選擇安裝Git Bash,這是一個模擬Windows中Bash shell行為的命令列。這將使下面顯示的大多數Unix命令與您的系統相容。

Mac

對於Mac,命令列可從名為“終端”的內建應用程式訪問。您可以使用Launchpad搜尋它,或在“應用程式”下的“實用程式”資料夾中找到它。

Linux

在Linux上,根據您使用的發行版,您有許多不同的選項,但命令“Ctrl + Alt + T”通常會觸發系統中的預設終端。

現在,您應該有一個類似於下圖的視窗:

命令列介面

命令列介面

用於Python開發的20多個最有用的CLI命令

開啟CLI後,就該深入研究頂級shell命令了,這將使您作為Python開發人員的生活更加輕鬆。

安裝命令

您可能已經偶然發現了一百萬種安裝Python的方法。但有時,只用一個命令就更方便了。

以下是可幫助您跨不同作業系統安裝Python的不同命令。

1.Chocolatey

在Windows上,預設情況下您沒有包管理器。解決這個問題的一個選項是Chocolatey,它為您提供直接從命令列安裝的程式——顯然包括Python

確保在執行以下命令之前安裝Chocolatey

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
choco install python --pre
choco install python --pre
choco install python --pre

2. Homebrew和Pyenv

macOS預設安裝了Python 2.7。但是,現在不推薦使用Python 2.7。整個社羣已經轉向Python 3。為了有效地管理Python版本,您可以使用pyenv之類的程式。

開啟命令列並使用以下命令安裝最新版本的Homebrew(像Chocolatey這樣的包管理器):

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
/bin/bash -c "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
/bin/bash -c "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

然後你可以使用這個簡單的命令安裝pyenv:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
brew install pyenv
brew install pyenv
brew install pyenv

您可以安裝特定的Python版本並將其設定為全域性Python可執行檔案,而不是Python 2:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
pyenv install 3.10 # Version you want
pyenv global 3.10.4 # Sets that version as default
pyenv install 3.10 # Version you want pyenv global 3.10.4 # Sets that version as default
pyenv install 3.10 # Version you want
pyenv global 3.10.4 # Sets that version as default

現在,如果您呼叫Python,它將是您使用pyenv設定的版本:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
python
# Python 3.10.4 ....
# >>>
python # Python 3.10.4 .... # >>>
python
# Python 3.10.4 ....
# >>>

3. apt、pacman和dnf

隨著Python在開源軟體中的廣泛使用,大量Linux發行版都預裝了Python。如果您的系統沒有,您可以使用包管理器安裝Python。

在基於Debian的發行版(Ubuntu、Linux Mint、Kali Linux)中,您將使用apt,它代表“高階軟體包工具”:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt update
sudo apt install python3
sudo apt update sudo apt install python3
sudo apt update
sudo apt install python3

此外,如果要將Python 3設定為預設Python直譯器,可以使用以下命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo apt install python-is-python3
sudo apt install python-is-python3
sudo apt install python-is-python3

在基於Arch的發行版中,您可以使用官方的包管理器pacman:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo pacman -S python
sudo pacman -S python
sudo pacman -S python

在Fedora和基於RPM的Linux發行版(Red Hat、CentOS)中,您使用dnf:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo dnf install python3
sudo dnf install python3
sudo dnf install python3

直譯器命令

讓我們快速回顧一下Python命令及其包管理器pip的主要標誌——命令列選項。

4.python

python命令有幾個標誌,表示修改程式碼執行行為的選項。

首先,要執行Python檔案,只需呼叫直譯器並新增檔名,包括.py副檔名:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
python helloworld.py
python helloworld.py
python helloworld.py

如果您需要記住標誌的作用,您可以help在以下3個簡報中的任何一箇中使用該標誌:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
python -?
python -h
python --help
python -? python -h python --help
python -?
python -h
python --help

要列印(檢視)您正在執行的Python版本,請使用以下命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
python -V
python --version
python -V python --version
python -V
python --version

如果您想在不開啟和編輯.py檔案的情況下執行Python程式碼,您可以使用命令標誌直接從終端執行它:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# Hello, World!
python -c "print('Hello, World!')"
# Hello, World! python -c "print('Hello, World!')"
# Hello, World!
python -c "print('Hello, World!')"

m標誌將Python模組作為指令碼執行。當您想使用內建的venv模組建立虛擬環境時,這非常有用:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
python -m venv .venv
python -m venv .venv
python -m venv .venv

5.pip

pip命令在Python包索引 (PyPI) 中查詢包,解析依賴項,並安裝您指定的包版本。

要安裝Python包,您只需鍵入要安裝的包pip的名稱和名稱。

以下命令將安裝最新版本的軟體包:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
pip install django
pip install django
pip install django

如果您需要特定版本,請執行以下命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# pip install package==version
pip install django==4.0.4
# pip install package==version pip install django==4.0.4
# pip install package==version
pip install django==4.0.4

在處理協作專案時,您需要跟蹤依賴關係,通常使用需求檔案。使用該r標誌,您可以從文字檔案中讀取和安裝軟體包:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
pip install -r requirements.txt
pip install -r requirements.txt
pip install -r requirements.txt

另一個常用的功能是freeze標誌。它用於輸出您在環境中安裝的軟體包版本列表。您可以使用它將依賴項輸出到需求檔案:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
pip freeze >> requirements.txt
pip freeze >> requirements.txt
pip freeze >> requirements.txt

許可權命令

Python非常擅長編寫指令碼和檔案處理。要處理這些任務,您需要了解許可權在作業系統中的工作方式。

6. sudo,runas

在基於Unix的系統(macOS、Linux、BSD)中,您必須具有超級使用者許可權才能執行某些任務,例如安裝程式,就像我們上面所做的那樣。

sudo命令允許您短暫獲得管理員許可權以執行這些命令之一。

以下是全域性安裝ueberzug(影象預覽Python包)的示例:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
sudo pip install ueberzug
sudo pip install ueberzug
sudo pip install ueberzug

Windows等效項是Runas,它以不同使用者或管理員身份執行指令碼:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
runas /noprofile /user:Administrator cmd
runas /noprofile /user:Administrator cmd
runas /noprofile /user:Administrator cmd

還有其他專案,例如Gsudo,這使得許可權提升過程比使用其他內建Windows命令更容易:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
:: Installs gsudo
choco install gsudo
:: Reads a file named MySecretFile.txt
gsudo type MySecretFile.txt
:: Installs gsudo choco install gsudo :: Reads a file named MySecretFile.txt gsudo type MySecretFile.txt
:: Installs gsudo
choco install gsudo
:: Reads a file named MySecretFile.txt
gsudo type MySecretFile.txt

7. chmod

chmod用於更改Unix中檔案和目錄的許可權。

一個常見的用法是使Python指令碼可執行:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# Makes mypythonscript.py executablechmod +x
mypythonscript.py
# Makes mypythonscript.py executablechmod +x mypythonscript.py
# Makes mypythonscript.py executablechmod +x
mypythonscript.py

使指令碼可執行後,您可以使用以下./符號直接執行它:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# Runs the script
./mypythonscript.py
# Runs the script ./mypythonscript.py
# Runs the script
./mypythonscript.py

在命令列介面中導航檔案系統是Python開發人員的日常任務。以下是使用Python程式設計時用於導航系統的一些基本命令。

8. ls, dir

要列出目錄(資料夾)的內容,您必須使用ls(Unix) 或dir(Windows) 命令。這可能是您第一次遇到CLI時學到的第一個命令。

這是使用的語法:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
ls # Shows the contents of the working directory
ls mydirectory
ls # Shows the contents of the working directory ls mydirectory
ls # Shows the contents of the working directory
ls mydirectory

以下是本地檔案系統中資料夾內容的示例:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
ls test_python/
# classes_error.py radius.py test-Django
ls test_python/ # classes_error.py radius.py test-Django
ls test_python/
# classes_error.py radius.py test-Django

該命令有許多有用的標誌。事實上,ls -al檢視隱藏檔案(以點開頭的檔案)以及每個檔案的模式、大小和日期通常被稱為檢視隱藏檔案:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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
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
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

對於Windows,您可以通過Git Bash使用ls,也可以使用內建dir命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
dir
dir
dir

9.密碼

pwd代表“列印工作目錄”,它正是這樣做的:為您提供您所在目錄的完整路徑:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
pwd
# /home/daniel/github/HTML-site/images
pwd # /home/daniel/github/HTML-site/images
pwd
# /home/daniel/github/HTML-site/images

如果您曾經在終端中迷失過自己,那麼這個命令就是救命稻草。

您可以在Windows中使用cd不帶引數的命令實現相同的輸出(請注意,Unix中的相同命令會將您帶到主目錄):

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# Only on Windows
cd
# D:\Folder\subFolder
# Only on Windows cd # D:\Folder\subFolder
# Only on Windows
cd
# D:\Folder\subFolder

10.cp

使用圖形檔案管理器複製檔案很直觀,但效率低下。使用此命令,您可以在系統上覆制任何型別的檔案:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
cp old_file.txt copy_old_file.txt
cp old_file.txt copy_old_file.txt
cp old_file.txt copy_old_file.txt

要複製目錄的所有內容,您必須使用cp -r

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
cp -r originaldirectory/ newdir
cp -r originaldirectory/ newdir
cp -r originaldirectory/ newdir

cp命令在Windows中是copy

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
copy old_file.txt copy_old_file.txt /a
copy old_file.txt copy_old_file.txt /a
copy old_file.txt copy_old_file.txt /a

11. cat, type

要在終端中列印文字檔案的內容而不使用編輯器開啟檔案,您可以在Unix和Windows上使用catmore或:lesstype

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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.
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.
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, move

mv命令將檔案和目錄從一個目錄移動到另一個目錄 – 基本上是剪下和貼上 – 如果目標不存在,則重新命名檔案:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# Rename files
mv source_file.txt renamed_file.txt
# Rename files mv source_file.txt renamed_file.txt
# Rename files
mv source_file.txt renamed_file.txt
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# File to another directory
mv renamed_file.txt newdir/
# File to another directory mv renamed_file.txt newdir/
# File to another directory
mv renamed_file.txt newdir/

您還可以使用模式匹配來移動檔案。例如,將所有.py檔案移動到另一個資料夾:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
mv *.py mypythondir/
mv *.py mypythondir/
mv *.py mypythondir/

Windows上的等效命令是move,其功能與上述幾乎相同:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# Windows
move source_file.txt renamed_file.txt
# Windows move source_file.txt renamed_file.txt
# Windows
move source_file.txt renamed_file.txt

13. rm, del

您可以使用rm命令刪除檔案和目錄。

要刪除檔案而不是目錄,您可以使用:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
rm file_to_remove.txt
rm file_to_remove.txt
rm file_to_remove.txt

如果要刪除空目錄,可以使用遞迴 ( -r) 標誌:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
rm -r dir_to_remove/
rm -r dir_to_remove/
rm -r dir_to_remove/

要刪除包含內容的目錄,您可以使用force ( -f) 和遞迴標誌:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
rm -rf dir_with_content/
rm -rf dir_with_content/
rm -rf dir_with_content/

在類似的形式中,您可以在Windows上找到del。更加謹慎,因為此命令沒有上面看到的阻止標誌:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
del \mywindowsdir
del \mywindowsdir
del \mywindowsdir

Info 小心這個命令。一旦你刪除了某些東西,就很難恢復它。

14. exit

完成Python程式設計後,您應該能夠退出shell會話。在大多數情況下,這也會關閉您正在使用的終端:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
exit
exit
exit

請注意,此命令適用於Windows和Unix。

命令列編輯器

一旦您習慣了命令列,您會發現更改視窗甚至​​使用滑鼠來編輯程式碼都比較慢。

在您留在命令列中時擁有編碼能力不僅是節省時間的好方法,而且還可以讓您在隊友中看起來像超級英雄!

以下是一些最常用的命令列編輯器。

15. Vim/Neovim

Vim及其後代Neovim是基於鍵盤的文字編輯器,主要用於命令列。根據2021年Stack Overflow調查,他們在最受開發者喜愛的編輯器中排名第4和第1。

最喜歡的程式碼編輯器

最喜歡的程式碼編輯器

Vim預裝在Linux和macOS上。實際上,它是您在與伺服器互動時會遇到的最多的編輯器。在Windows上,您需要使用Vim頁面中的可執行安裝程式來安裝它

現在,您只需在命令列中輸入Vim的名稱即可享受Vim的強大功能:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
vim
vim
vim

這將觸發一個基於文字的介面,其中包含多個鍵盤組合,用於您在Python中編碼時可能需要的每個操作。

Vim有一個陡峭的學習曲線,但是一旦你掌握了它,你就不會很快轉向其他東西。

Vi改進

Vi改進

Info 要退出Vim,請按“Escape”並鍵入:q

16.Nano

Nano是另一個主要用於快速編輯的命令列文字編輯器。

假設您在程式碼中引入了語法錯誤,但不想開啟編輯器來更正它。Nano可幫助您直接從CLI修復它:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
nano
nano
nano

Info 如果上述命令出現“未知命令”錯誤,請回溯並遵循完整的安裝過程

17. Emacs

Emacs是您能找到的最具擴充套件性和可定製性的文字編輯器之一。它有一個專門用於Python程式設計的部分,您可以在其中找到大量外掛來增強您的開發體驗。

Emacs幾乎在所有作業系統中都可用,因此如果您尚未安裝,請檢視下載說明

要從命令列型別開啟Emacs,請使用無視窗系統標誌 ( -nw):

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
emacs -nw
emacs -nw
emacs -nw

開發工具

Python開發不僅意味著編碼,還意味著處理其他工具,例如虛擬環境、版本控制系統和部署工具。

通過學習下面的命令,您將在使用Python開發任何型別的應用程式時獲得優勢。

18. virtualenv/venv

虛擬環境是Python開發中使用的一項關鍵技術。使用它們,您可以將跨不同專案使用的包隔離到一個輕量級資料夾中,通常命名為.venv.

使用Python 3.3或更高版本,您可以使用內建的venv模組來建立虛擬環境:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# .venv being the name of the virtual environment
python -m venv .venv
# .venv being the name of the virtual environment python -m venv .venv
# .venv being the name of the virtual environment
python -m venv .venv

virtualenv是一個外部專案,與內建選項相比,它更快、更具可擴充套件性。要建立虛擬環境,首先安裝virtualenv包:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
# Installs virtualenv
pip install --user virtualenv
# Creates a .venv virtual environment
virtualenv .venv
# Installs virtualenv pip install --user virtualenv # Creates a .venv virtual environment virtualenv .venv
# Installs virtualenv
pip install --user virtualenv
# Creates a .venv virtual environment
virtualenv .venv

接下來,您需要啟用虛擬環境。在Windows上,根據您使用的是cmd還是PowerShell(推薦)執行以下命令之一:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
:: PowerShell
.venv\Scripts\Activate.ps1
:: PowerShell .venv\Scripts\Activate.ps1
:: PowerShell
.venv\Scripts\Activate.ps1
Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
:: Cmd
.venv\Scripts\activate.bat
:: Cmd .venv\Scripts\activate.bat
:: Cmd
.venv\Scripts\activate.bat

在Linux或macOS上:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
source .venv/bin/activate
source .venv/bin/activate
source .venv/bin/activate

19. Git

版本控制是軟體開發中最重要的實踐之一。它使我們能夠跟蹤所有程式碼修改,與其他開發人員協作,並清楚地瞭解整個開發過程。

Git是迄今為止最常用的版本控制系統。您可以從其下載頁面安裝它。

安裝後,您可以開啟終端並使用以下命令檢視所有可用選項:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
git help
git help
git help

要建立儲存庫,請使用git init並鍵入您的儲存庫的名稱:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
git init name_repository
Initialized empty Git repository in /home/daniel/name_repository/.git/
git init name_repository Initialized empty Git repository in /home/daniel/name_repository/.git/
git init name_repository
Initialized empty Git repository in /home/daniel/name_repository/.git/

請注意,這隻會建立一個本地Git儲存庫。如果您想擁有一個遠端儲存庫來線上儲存所有更改,您應該使用GitHub或BitBucket之類的平臺。

要克隆遠端儲存庫,您將使用git clone和儲存庫的源。在下面的示例中,我們通過SSH克隆GitHub儲存庫:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
git clone git@github.com: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.
git clone git@github.com: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.
git clone git@github.com: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. Docker

Docker使將Python應用程式打包和釋出為輕量級、可移植、自給自足的容器變得更加容易。它有助於開發和部署,允許所有協作者使用相同的設定。

要使用Docker,您必須嚴格遵循獲取Docker頁面上為您的作業系統顯示的安裝過程。

要列出可用的Docker命令,請執行以下命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
docker help
docker help
docker help

在這個狹窄的部分中很難解釋如何執行Docker compose,因此請務必檢視官方文件

21. Grep

Grep是一個基本的命令列實用程式,用於在純文字檔案中進行模式匹配。

一個常見的用法是查詢一個單詞在檔案中重複的次數:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
grep -ic python pythondocument.txt
2
grep -ic python pythondocument.txt 2
grep -ic python pythondocument.txt
2

pythondocument.txt在上面的示例中,我們獲得了在檔案中找到Python(不區分大小寫)的次數。

grep的Windows等效項是findstr。但是,它不是完全相同的程式。您可以使用Git Bash在Windows中使用grep:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
findstr /i /C python pythondocument.txt
2
findstr /i /C python pythondocument.txt 2
findstr /i /C python pythondocument.txt
2

22.HTTPie

HTTPie是一個命令列HTTP客戶端,可以更輕鬆地與Web服務互動。例如,您可以使用它來測試您的Python API,或與第三方網站進行互動。

這個CLI工具幾乎在每個包管理器中都可用,如HTTPie的官方文件所示。但是,它也可以作為Python包提供,因此您可以使用pip安裝它。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
pip install httpie
pip install httpie
pip install httpie

以下是查詢遠端 API 的方式——在本例中為GitHub API

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
http GET https://api.github.com/users/danidiaztech
HTTP/1.1 200 OK
Accept-Ranges: bytes
Access-Control-Allow-Origin: *
...
http GET https://api.github.com/users/danidiaztech HTTP/1.1 200 OK Accept-Ranges: bytes Access-Control-Allow-Origin: * ...
http GET https://api.github.com/users/danidiaztech
HTTP/1.1 200 OK
Accept-Ranges: bytes
Access-Control-Allow-Origin: *
...

23. ping

ping是幾乎所有作業系統上預設可用的CLI命令。它的工作原理是向IP地址傳送資料包並測試傳輸資料和接收響應所需的時間,然後以毫秒為單位顯示結果

該命令主要用於驗證兩臺機器之間的連線,即你的機器和你在web伺服器上的Python應用程式:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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
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
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

命令參考表

下面,您可以找到我們討論過的每個命令的快速參考:

命令 用法
choco 在Windows上安裝包
brew macOS包管理器
apt, pacman, dnf 不同Linux發行版上的包管理器
python 執行Python直譯器
pip Python包管理器
sudo, runas 用於擴充套件許可權的Unix和Windows程式
chmod 更改檔案許可權
ls 列出目錄的內容
pwd 列印工作目錄
cp 複製檔案和目錄
cat 列印檔案內容
mv, move 移動(重新命名)檔案和目錄
rm, del 刪除檔案和目錄
exit 退出當前shell會話
vim, neovim 高效的文字編輯
nano 用於快速編輯的文字編輯器
emacs 最可定製的編輯器
virtualenv, venv 虛擬環境生成器
git 版本控制系統
docker 容器化應用
grep 模式匹配實用程式
http Web服務測試實用程式
ping 測試網路連線
kill 終止程式

小結

Python是最容易學習的程式語言之一。您會發現的唯一絆腳石是當您在不瞭解您需要的命令的情況下進入命令列時。

在本文中,您瞭解了命令列及其用於Python開發的一些最流行的命令。

評論留言