<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Python 命令參數(shù)詳解

          共 1556字,需瀏覽 4分鐘

           ·

          2021-11-01 19:18

          大家好,歡迎來到 Crossin的編程教室 !
          我想你最常用到的 Python 命令就是運行 Python 腳本文件,像這樣:

          python xxx.py

          不過你知道為什么這樣就可以直接執(zhí)行 Python 代碼么?
          還有, Python 還有一些常用的命令可玩,你試過嗎?

          今天我們就來給大家來說說那些我們常用到的 Python 命令。
          7ffff10672499a79b693bb209dcb0cb9.webp

          python?xxx.py
          當你通過 Python 執(zhí)行腳本文件的時候,sys.argv[0] 會存儲這個 py 文件名稱:
          8276b28d306a139f593661a47aa8f6ee.webp
          747481b1273e8069cc1a51f4a1d6b443.webp
          而當你在 python xxx.py 后面再添加一些參數(shù)的時候,sys.argv 也同樣可以接收到相關(guān)的參數(shù):
          06b7cf38d8ee325da2b6f08487718948.webp
          1e203a70a85b8af496855b83b21f1b7b.webp
          而且,它會把你的執(zhí)行的 py 文件路徑添加到 sys.path 中來,將它作為主模塊來運行:
          321a19a4a9311851a3c9d967911d42fa.webp
          除了直接使用 python 執(zhí)行腳本文件之外,你也可以使用 Python 執(zhí)行整個 Python 項目目錄或者壓縮文件,不過在這里面你需要定義一個?__main__.py ,要不然解釋器無法識別運行:

          52b006ce7249a273f947ca6cffb3b50d.webp
          而當你的目錄中有定義 __main__.py 的時候,它就可以將 main 添加到 sys.path 中來,作為 main 模塊執(zhí)行:
          b4448431bb00d7b62d1c496d89f8b92d.webp
          除此之外,你還可以直接使用腳本的文件執(zhí)行 Python 代碼,在你的腳本文件的第一行定義 Python 環(huán)境:

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

          1b397ac66cca64adf1a2af759d6c478f.webp
          python?-c
          使用 python -c 可以讓你在命令行中寫 Python 代碼執(zhí)行,可以使用分號 進行代碼分行:
          fa1ff0841fb4bb223c824c96c9fbf93a.webp
          一種更好的方式是使用空行對代碼進行分行:
          b23c7adce6890a4a4c1ac0a6f0047619.webp
          當你在 python 解釋器中使用 -c 命令的時候,它會將 -c 添加到 sys.argv[0] 中,將當前的路徑添加到 sys.path 中:

          845649947a307dadaed3dd7864ea9340.webp
          python?-m
          使用 -m 模塊可以以腳本的方式執(zhí)行 Python 的模塊或者包,因為執(zhí)行的是模塊,所以就不用像執(zhí)行腳本文件那樣把 .py 擴展名稱寫出來。
          a69171ae66e23ecc438fc04cd80247f5.webp
          0915cd80187ede28a8ab8c215fd3c7c0.webp
          可以看到,模塊的完全路徑會添加到 sys.argv[0],將當前的路徑添加到 sys.path 中,將模塊名作為 main 執(zhí)行。
          你能體會到 python xxx.py python -m xxx 之間的區(qū)別么?

          當然,你也可以使用 -m 來執(zhí)行包中的模塊:
          61864899340fed45b28d308a1edc3de5.webp
          通過 -m 的形式,解釋器會通過搜索路徑找到相應的模塊執(zhí)行,這樣你就不需要想執(zhí)行 .py 那樣寫入文件的絕對路徑啦。

          使用 python -m 的一個常用場景是在不同的版本環(huán)境中執(zhí)行相應的模塊,比如使用 pip 安裝模塊的時候:
          ca4172eff7995d5a2c53f997e9d1e198.webp
          5790e49c3486a8bee5057e57d7f17649.webp
          5fc99fe19933890ded3f398d25db8c27.webp
          python?-i
          當你使用 -c 命令的時候,還想執(zhí)行完相關(guān)代碼后進入 Python 交互模式就可以使用 -i
          bfbdb0690977db6df361ebf8311dd791.webp
          還有其它的命令,你可以通過 python -h 找到相關(guān)的解釋:
          9e2cd17d39ee4fb58c8b3566198cca67.webp
          可能有時候你也想要提供一些命令給別人使用,Python 內(nèi)置了一個 argparse 的庫,你可以使用它來創(chuàng)建你要提供的命令,比如這樣:
          aa76b5d60e948ca6ccf050a7984cd716.webp
          執(zhí)行的時候就可以使用相關(guān)的命令了:

          5ee85c2d9009b8dbb4a2efa15402f2ba.webp
          click庫

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

          7fda049ce728ea98698dfb7c7c43bb50.webp
          使用起來是這樣的:

          17ca2bc80516174faaf6ab969fd40f1c.webp6a90ad0eee6971a337d2e112241c04c0.webp
          當然,它還提供了多種創(chuàng)建命令的方式,你可以在以下鏈接中找到:https://click.palletsprojects.com/en/6.x/
          以上就是對python命令的介紹。如果文章對你有幫助,歡迎轉(zhuǎn)發(fā)/點贊/收藏~
          作者:小帥b來源:學習python的正確姿勢

          _往期文章推薦_

          命令行常用命令




          如需了解付費精品課程教學答疑服務請在Crossin的編程教室內(nèi)回復: 666

          瀏覽 73
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

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

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  中国一级特黄毛片大片 | 北条麻妃无码一区二区三区视频 | 青娱乐国产精品视频 | 天天拍天天操天天干 | 手机av网站 |