簡體   English   中英

“./file.py” VS “python file.py”

[英]“./file.py” VS “python file.py”

./file.pypython file.py命令之間有什么區別?

我所看到的

我通常會看到人們在使用 vim 或 nano 或 emacs 等終端文本編輯器時,或者在使用基於 linux 的操作系統(如 Ubuntu 或 Arch Linux)時使用./file.py

我通常會從使用其他操作系統的人那里看到python file.py 我可能不正確。 但如果是這樣,兩者之間有什么區別呢?

謝謝你!

在基於 linux 的操作系統上,當您執行文本文件時,如果它以 #!/bin/python(shebang 語法)開頭,它實際上會執行 /bin/python 文件名,因此執行此操作比必須鍵入要快一直都是python,把它做成可執行文件比較容易,但是沒有大的區別

在 Linux 和 Unix 操作系統中,您可以執行可執行文件 ( ./file.py ) 而無需明確將其指定為 python 文件,而您也可以在 Windows 和非 Windows 中執行與python file.py相同的file.py操作系統。

要在不顯式添加 python 前綴的情況下執行此 python 文件,它必須滿足以下兩個要求:

必須包含 shebang 行:sha-bang/shebang 行是一行代碼,其中包含告訴加載程序使用指定解釋器的字符,正如文檔中所述

如果腳本文件的第一行以 #! 開頭,則稱為“shebang”行。 Linux 和其他類似 Unix 的操作系統對此類行具有本機支持,並且它們通常用於此類系統以指示應如何執行腳本。 此啟動器允許在 Windows 上將相同的工具與 Python 腳本一起使用,上面的示例演示了它們的使用。

為了允許 Python 腳本中的 shebang 行在 Unix 和 Windows 之間移植,此啟動器支持許多“虛擬”命令來指定要使用的解釋器。 支持的虛擬命令有:

 /usr/bin/env python /usr/bin/python /usr/local/bin/python python

必須是可執行文件

在 Linux 和 Unix 操作系統中,文件根據其權限和模式被分開處理,您必須在調用之前使file.py成為可執行文件,而無需顯式前綴python/python3 ,要使file.py可執行,您需要將模式更改為通過從 Linux 終端的文件目錄運行chmod +x file.py來執行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM