<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 模塊 ## 1\. Python中的模塊 有過C語言編程經驗的朋友都知道在C語言中如果要引用`sqrt函數`,必須用語句`#include <math.h>`引入math.h這個頭文件,否則是無法正常進行調用的。 那么在Python中,如果要引用一些其他的函數,該怎么處理呢? 在Python中有一個概念叫做模塊(module),這個和C語言中的頭文件以及Java中的包很類似,比如在Python中要調用`sqrt函數`,必須用import關鍵字引入math這個模塊,下面就來了解一下Python中的模塊。 說的通俗點:模塊就好比是工具包,要想使用這個工具包中的工具(就好比函數),就需要導入這個模塊 ## 2\. import 在Python中用關鍵字`import`來引入某個模塊,比如要引用模塊math,就可以在文件最開始的地方用import math來引入。 形如: ~~~ import module1,mudule2... ~~~ 當解釋器遇到import語句,如果模塊在當前的搜索路徑就會被導入。 在調用math模塊中的函數時,必須這樣引用: ~~~   模塊名.函數名 ~~~ * 想一想: > 為什么必須加上模塊名調用呢? * 答: > 因為可能存在這樣一種情況:在多個模塊中含有相同名稱的函數,此時如果只是通過函數名來調用,解釋器無法知道到底要調用哪個函數。所以如果像上述這樣引入模塊的時候,調用函數必須加上模塊名 ~~~ import math #這樣會報錯 print(sqrt(2)) #這樣才能正確輸出結果 print(math.sqrt(2)) ~~~ 有時候我們只需要用到模塊中的某個函數,只需要引入該函數即可,此時可以用下面方法實現: ~~~ from 模塊名 import 函數名1,函數名2.... ~~~ 不僅可以引入函數,還可以引入一些全局變量、類等 * 注意: > * 通過這種方式引入的時候,調用函數時只能給出函數名,不能給出模塊名,但是當兩個模塊中含有相同名稱函數的時候,后面一次引入會覆蓋前一次引入。也就是說假如模塊A中有函數function( ),在模塊B中也有函數function( ),如果引入A中的function在先、B中的function在后,那么當調用function函數的時候,是去執行模塊B中的function函數。 > > * 如果想一次性引入math中所有的東西,還可以通過from math import \*來實現 > ## 3\. from…import Python的from語句讓你從模塊中導入一個指定的部分到當前命名空間中 語法如下: ~~~ from modname import name1[, name2[, ... nameN]] ~~~ 例如,要導入模塊fib的fibonacci函數,使用如下語句: ~~~ from fib import fibonacci ~~~ ### 注意 * 不會把整個fib模塊導入到當前的命名空間中,它只會將fib里的fibonacci單個引入 ## 4\. from … import \* 把一個模塊的所有內容全都導入到當前的命名空間也是可行的,只需使用如下聲明: ~~~ from modname import * ~~~ ### 注意 * 這提供了一個簡單的方法來導入一個模塊中的所有項目。然而這種聲明不該被過多地使用。 ## 5\. as ~~~ In [1]: import time as tt In [2]: time.sleep(1) --------------------------------------------------------------------------- NameError Traceback (most recent call last) <ipython-input-2-07a34f5b1e42> in <module>() ----> 1 time.sleep(1) NameError: name 'time' is not defined In [3]: In [3]: In [3]: tt.sleep(1) In [4]: In [4]: In [4]: from time import sleep as sp In [5]: sleep(1) --------------------------------------------------------------------------- NameError Traceback (most recent call last) <ipython-input-5-82e5c2913b44> in <module>() ----> 1 sleep(1) NameError: name 'sleep' is not defined In [6]: In [6]: In [6]: sp(1) In [7]: ~~~ ## 6\. 定位模塊 當你導入一個模塊,Python解析器對模塊位置的搜索順序是: 1. 當前目錄 2. 如果不在當前目錄,Python則搜索在shell變量PYTHONPATH下的每個目錄。 3. 如果都找不到,Python會察看默認路徑。UNIX下,默認路徑一般為/usr/local/lib/python/ 4. 模塊搜索路徑存儲在system模塊的sys.path變量中。變量里包含當前目錄,PYTHONPATH和由安裝過程決定的默認目錄。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看