模組的使用
1、import
Python 模組的使用跟其他程式語言也是類似的。你要使用某個模組,在使用之前,必須導入這個模組。導入模組我們使用關鍵字 import。
import 的語法基本上如下:
import module1[, module2[,... moduleN]
例如我們使用標準函式庫模組中的 math 模組。當解釋器遇到 import 語句,如果模組在目前的搜尋路徑就會被導入。
#!/usr/bin/env python3 # -*- coding: UTF-8 -*- import math _author_ = '两点水' print(math.pi) 输出的结果: 3.141592653589793
一個模組只會被導入一次,不管你執行了多少次 import。這樣可以防止導入模組一遍又一遍地執行。
當我們使用 import 語句的時候,Python 解釋器是怎麼找到對應的檔案的呢?
這就牽涉到 Python 的搜尋路徑,搜尋路徑是由一系列目錄名稱組成的,Python 解釋器就依序從這些目錄中去尋找所引入的模組。這看起來很像環境變量,事實上,也可以透過定義環境變數的方式來確定搜尋路徑。搜尋路徑是在 Python 編譯或安裝的時候決定的,安裝新的函式庫應該也會修改。搜尋路徑被儲存在sys 模組中的 path 變數 。
因此,我們可以查一下路徑:
#!/usr/bin/env python # -*- coding: UTF-8 -*- import sys print(sys.path)
輸出結果:
['C:\Users\Administrator\Desktop\Python\Python8Code', 'G:\PyCharm 2017.1.4\helpers\pycharm', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python36.zip', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python36\DLLs', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python36', 'C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages', 'C:\Users\Administrator\Desktop\Python\Python8Code\com\Learn\module\sys']
2、from···import
有沒有想過,怎麼直接導入某個模組中的屬性和方法呢?
Python 中,導入一個模組的方法我們使用的是import 關鍵字,這樣做是導入了這個模組,這裡需要注意了,這樣做只是導入了模組,並沒有導入模組中具體的某個屬性或方法的。而我們想要直接導入某個模組中的某一個功能,也就是屬性和方法的話,我們可以使用 from···import 語句。
語法如下:
from modname import name1[, name2[, ... nameN]]
看完簡介後可能會想, from··import 和 import 方法有啥差別呢?
想知道差異是什麼,觀察下面兩個例子:
import 導入sys 模組,然後使用version 屬性
##from· ··import 直接導入version 屬性3、from ··· import *
#!/usr/bin/env python3 # -*- coding: UTF-8 -*- from sys import * print(version) print(executable)輸出的結果為:
3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 18:41:36) [MSC v.1900 64 bit (AMD64)] C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python.exe注意:這提供了一個簡單的方法來導入一個模組中的所有方法屬性。然而這種聲明不該被過度使用。