<kbd id="5sdj3"></kbd>
<th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>

    你真的會使用 Python 命令嗎?

    共 1748字,需瀏覽 4分鐘

     ·

    2020-08-19 10:53

    我想你最常用到的 Python 命令就是運行 Python 腳本文件,像這樣:

    python?xxx.py

    不過你知道為什么這樣就可以直接執(zhí)行 Python 代碼么?

    還有, Python 還有一些常用的命令可玩,你試過嗎?



    接下來,就是學(xué)習(xí) Python 的正確姿勢:


    我們來說說那些我們常用到的 Python 命令。

    python?xxx.py

    當(dāng)你通過 Python 執(zhí)行腳本文件的時候,sys.argv[0] 會存儲這個 py 文件名稱:



    而當(dāng)你在 python xxx.py 后面再添加一些參數(shù)的時候,sys.argv 也同樣可以接收到相關(guān)的參數(shù):



    而且,它會把你的執(zhí)行的 py 文件路徑添加到 sys.path 中來,將它作為主模塊來運行:


    除了直接使用 python 執(zhí)行腳本文件之外,你也可以使用 Python 執(zhí)行整個 Python 項目目錄或者壓縮文件,不過在這里面你需要定義一個?__main__.py ,要不然解釋器無法識別運行:


    而當(dāng)你的目錄中有定義 __main__.py 的時候,它就可以將 main 添加到 sys.path 中來,作為 main 模塊執(zhí)行:


    除此之外,你還可以直接使用腳本的文件執(zhí)行 Python 代碼,在你的腳本文件的第一行定義 Python 環(huán)境:


    接著添加腳本文件的執(zhí)行權(quán)限,然后就可以直接用腳本文件名稱直接運行 Python 了:


    python?-c


    使用 python -c 可以讓你在命令行中寫 Python 代碼執(zhí)行,可以使用 ;?進行代碼分行:


    一種更好的方式是使用空行對代碼進行分行:



    當(dāng)你在 python 解釋器中使用 -c 命令的時候,它會將 -c 添加到 sys.argv[0] 中,將當(dāng)前的路徑添加到 sys.path 中:



    ?python?-m

    使用 -m 模塊可以以腳本的方式執(zhí)行 Python 的模塊或者包,因為執(zhí)行的是模塊,所以就不用像執(zhí)行腳本文件那樣把 .py 擴展名稱寫出來。



    可以看到,模塊的完全路徑會添加到 sys.argv[0],將當(dāng)前的路徑添加到 sys.path 中,將模塊名作為 main 執(zhí)行。

    你能體會到 python xxx.py 和 python -m xxx 之間的區(qū)別么?

    當(dāng)然,你也可以使用 -m 來執(zhí)行包中的模塊:


    通過 -m 的形式,解釋器會通過搜索路徑找到相應(yīng)的模塊執(zhí)行,這樣你就不需要想執(zhí)行 .py 那樣寫入文件的絕對路徑啦。

    使用 python -m 的一個常用場景是在不同的版本環(huán)境中執(zhí)行相應(yīng)的模塊,比如使用 pip 安裝模塊的時候:


    ?python?-i

    當(dāng)你使用 -c 命令的時候,還想執(zhí)行完相關(guān)代碼后進入 Python 交互模式就可以使用 -i :


    還有其它的命令,你可以通過 python -h 找到相關(guān)的解釋:


    可能有時候你也想要提供一些命令給別人使用,Python 內(nèi)置了一個 argparse 的庫,你可以使用它來創(chuàng)建你要提供的命令,比如這樣:


    執(zhí)行的時候就可以使用相關(guān)的命令了:


    除此之外,還有一個叫做 click 的第三方庫,也是用來創(chuàng)建命令的,不同的是它可以用裝飾器的方式實現(xiàn),你可以直接使用 @click.option 來定義命令選項,用起來相對簡單,這是一個官方的例子:


    使用起來是這樣的:




    當(dāng)然,它還提供了多種創(chuàng)建命令的方式,你可以在以下鏈接中找到:

    https://click.palletsprojects.com/en/6.x/


    ok,以上就是小帥b今天給你帶來的分享,希望對你有幫助,那么我們下回見,peace!

    回復(fù)下方「關(guān)鍵詞」,獲取優(yōu)質(zhì)資源


    回復(fù)關(guān)鍵詞「簡明python」,立即獲取入門必備書籍簡明python教程》電子版

    回復(fù)關(guān)鍵詞「爬蟲」,立即獲取爬蟲學(xué)習(xí)資料


    推薦閱讀


    請拼命點贊
    瀏覽 34
    點贊
    評論
    收藏
    分享

    手機掃一掃分享

    分享
    舉報
    評論
    圖片
    表情
    推薦
    點贊
    評論
    收藏
    分享

    手機掃一掃分享

    分享
    舉報

    <kbd id="5sdj3"></kbd>
    <th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>
    亚洲第一色五月 | 97精品人妻一区二区三区蜜桃 | 国产一级片视频 | 人妻操操 | 国产精品视频在线免费 |