電子技術論壇_中國專業的電子工程師學習交流社區-中電網技術論壇's Archiver

look_w 發表于 2019-5-18 10:17

python模塊(1)

簡介

Python 模塊(Module),是一個 Python 文件,以 .py 結尾,包含了 Python 對象定義和Python語句。
模塊讓你能夠有邏輯地組織你的 Python 代碼段。
把相關的代碼分配到一個模塊里能讓你的代碼更好用,更易懂。
模塊能定義函數,類和變量,模塊里也能包含可執行的代碼。

例子
下例是個簡單的模塊 support.py:
support.py 模塊:

def print_func( par ):
   print "Hello : ", par
   return



import 語句

模塊的引入
模塊定義好后,我們可以使用 import 語句來引入模塊,語法如下:

import module1[, module2[,... moduleN]



比如要引用模塊 math,就可以在文件最開始的地方用

import math



來引入。在調用 math 模塊中的函數時,必須這樣引用:
模塊名.函數名
當解釋器遇到 import 語句,如果模塊在當前的搜索路徑就會被導入。

搜索路徑是一個解釋器會先進行搜索的所有目錄的列表。如想要導入模塊 support.py,需要把命令放在腳本的頂端:

test.py 文件代碼:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

# 導入模塊
import support

# 現在可以調用模塊里包含的函數了
support.print_func("Joe")



以上實例輸出結果:

Hello : Joe



一個模塊只會被導入一次,不管你執行了多少次import。這樣可以防止導入模塊被一遍又一遍地執行。
from…import 語句

Python 的 from 語句讓你從模塊中導入一個指定的部分到當前命名空間中。語法如下:

from modname import name1[, name2[, ... nameN]]



例如,要導入模塊 fib 的 fibonacci 函數,使用如下語句:

from fib import fibonacci



這個聲明不會把整個 fib 模塊導入到當前的命名空間中,它只會將 fib 里的 fibonacci 單個引入到執行這個聲明的模塊的全局符號表。
from…import* 語句

把一個模塊的所有內容全都導入到當前的命名空間也是可行的,只需使用如下聲明:

from modname import *



這提供了一個簡單的方法來導入一個模塊中的所有項目。然而這種聲明不該被過多地使用。

例如我們想一次性引入 math 模塊中所有的東西,語句如下:

from math import *



搜索路徑

當你導入一個模塊,Python 解析器對模塊位置的搜索順序是:

1、當前目錄
2、如果不在當前目錄,Python 則搜索在 shell 變量 PYTHONPATH 下的每個目錄。
3、如果都找不到,Python會察看默認路徑。UNIX下,默認路徑一般為/usr/local/lib/python/。
模塊搜索路徑存儲在 system 模塊的 sys.path 變量中。變量里包含當前目錄,PYTHONPATH和由安裝過程決定的默認目錄。
PYTHONPATH 變量

作為環境變量,PYTHONPATH 由裝在一個列表里的許多目錄組成。PYTHONPATH 的語法和 shell 變量 PATH 的一樣。
在 Windows 系統,典型的 PYTHONPATH 如下:

set PYTHONPATH=c:\python27\lib;


在 UNIX 系統,典型的 PYTHONPATH 如下:

set PYTHONPATH=/usr/local/lib/python

頁: [1]

Powered by eccn 7.0.0  © 2001-2009 Eccn Inc.

成茄子视频人app污下载-茄子视频ios下载安装-茄子视频懂你更多qz8app懂你更多