例項:
模組foo.py的內容:
yuqiu@w1-01-11-0492:~$ cat foo.py
#!/usr/bin/python
# filename: foo.py
bar='hello'
print bar
先用from匯入模組:
>>> from foo import bar
hello #說明模組已經被執行了一次,from和import都會對模組裡的語句執行一遍
>>> bar
'hello' #從模組裡匯入的內容
>>> bar='yuqiu' #對變數重新賦值
再用import匯入模組:
>>> import foo #第二次匯入該模組,模組不會再執行,而是從記憶體裡載入資料
>>> foo.bar
'hello' #為什麼boo.bar的值不是『yuqiu』呢?
原因:from匯入模組的過程:
1、尋找模組foo的位置;
2、將foo源**編譯成位元組碼(根據需要)
3、執行位元組碼
執行位元組碼的過程
foo.bar='hello'
bar=foo.bar #此時『hello』字串物件便有兩個引用計數
delete foo
對bar重新賦值後bar='yuqiu',bar會引用到另外乙個字串物件'yuqiu'
import foo #再次匯入模組
foo.bar會從記憶體中讀取,所以foo.bar的值為'hello'
python中import與from方法總結
一 模組 包簡介 模組 所謂模組就是乙個.py檔案,用來存放變數,方法的檔案,便於在其他python檔案中匯入 通過import或from 包 package 包是更大的組織單位,用來組織區別管理多個模組檔案。import 用來匯入模組 from 用於從模組中匯入方法 全部或部分 也可用as 重新命...
Python中import和from的一些事。。。
客戶端可以執行import或from語句。如果模組還沒有載入,這兩個語句會去搜尋 編譯以及執行模組檔案程式。主要差別在於,import會讀取整個模組,所以必須進行定義後才能讀取它的變數名 from將獲取 或者是複製 模組特定的變數名。import使乙個變數名引用整個模組物件,因此必須通過模組名稱來得...
include與import引用模版的區別
區別 1。import需要先引用template,然後再使用template include不需要預先引用,直接在需要的地方引入模版即可。2。include模式非常簡單,就是簡單的 替換,不存在作用域,也不能像import一樣使用data傳遞變數 3 import存在作用域的概念。即只會import...