Python學習筆記十_模塊、第三方模塊安裝、模塊導入


一、模塊、包

1、模塊

模塊實質上就是一個python文件。它是用來組織代碼的,意思就是把python代碼寫到里面,文件名就是模塊的名稱,test.py test就是模塊的名稱

2、包

包,package本質就是一個文件夾,和文件夾不一樣的是它有一個__init__.py文件。包是從邏輯上來組織模塊的,也就是說它是用來存放模塊的,如果想到如其他目錄下的模塊,那么這個目錄必須是一個包才可以導入。

二、模塊分類

1、標准模塊、標准包

  python自帶的這些模塊,直接import就能用的

  import string,random,datetime,os,sys,json,hashlib

2、第三方模塊

  別人寫好的一些模塊,你要安裝之后才可以用

  想實現某個功能,可以先去百度搜一下有沒有第三方模塊

3、自己寫的python文件

三、安裝第三方模塊

1、傻瓜式的

  (1) 直接在命令行窗口輸入命令  pip install pymysql 、pip install redis

    pip在python3.4以上的版本是自帶的。但這種方式需要保證pycharm中的Project Interpreter路徑是Python安裝路徑,否則即使窗口顯示下載安裝成功,依然不能成功import

    因為命令行下載下來的第三方安裝包存儲在Python安裝路徑\python3\Lib\site-packages

    而pycharm import時,是從pycharm->File->Settings->Project Interpreter->設置的路徑下\python\venv\Lib\site-packages去取第三方安裝包

  (2) 也可以直接在pycharm中安裝第三方模塊,這樣安裝的模塊會放在Project Interpreter->設置的路徑下\python\venv\Lib\site-packages下,就可以直接使用。

  (3) 若提示pip命令不存在

    輸入 where pip

    若提示pip不是內部命令

   pycharm External Libraries

   備注:python 3.5以后 scripts自動加入到計算機環境變量   

沒有pip命令的怎么搞  

   a、pycharm里面點python console
   b、找到python安裝目錄
   c、然后把安裝目錄下的scripts目錄,加入到環境變量里面即可
      ps:環境變量在PATH里面加
  (4) Unknown or unsupported command 'install' 出來這個問提怎么解決
    a、打開 C:\strawberry\perl\bin\
    b、把這個目錄下的pip 都改成其他的名字,這個對其他的沒有影響

2、手動安裝

限制外網無法直接下載時,可以找別人下載好包然后手動安裝

  (1) 百度搜索:python redis

  (2) 找到網址:https://pypi.python.org/pypi/redis#downloads,下載安裝包

  (3) 安裝whl結尾的安裝包

   shift+右鍵,在此處打開命令行窗口(或者在地址欄中直接輸入cmd)

   pip install redis-2.10.6-py2.py3-none-any.whl

  (4) 安裝tar.gz結尾的安裝包

    a、解壓這個壓縮包

    b、進入到這個解壓之后的文件夾里面(shift+右鍵,在此處打開命令行窗口(或者在地址欄中直接輸入cmd))

    c、在命令行里面運行 python setup.py install

3、卸載模塊

pip uninstall xxx #卸載

四、導入模塊的順序、實質

1、python導入模塊時候的順序:

  (1) 從當前目錄下找需要導入的python文件

  (2) 從python的環境變量中找 sys.path 

2、導入模塊的實質:

   就是把python文件從頭到尾執行一次

舉個例子:

  (1) 自定義一個python模塊 dr.py,放在當前目錄下 

name = 'hello'
def my():
    print('python')
my() 

  (2) 新建一個tmp.py

import dr #導入文件的時候已經把python文件執行了一次,打印出python
print(dr.name) #打印出hello
dr.my() #打印出python

上面的代碼還可以用下面這種方式寫

from dr import name,my #這種調用自定義函數時不用再寫“文件名.函數”,直接寫函數或者變量名
print(name)
my()
from dr import * #導入所有的
#from aa import *
my()
#盡量不要用,因為看源碼的時候會很難看出來函數屬於哪個文件

  (3) 當把dr.py放在sys.path其中一個環境變量下后,dr.就可以點出函數了 

    (4) 當前目錄和path環境變量下都有dr.py,會優先選擇當前目錄下的dr.py


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM