Python中from import和import的区别?没有比这更好的回答了
ps:使用的python3.5版本。
例如datetime:
from datetime import datetime print(datetime.now())就可以執(zhí)行,但是用import就不行:
import datetime print(datetime.now())報錯:AttributeError: module ‘datetime’ has no attribute ‘now’
import datetime.datetime print(datetime.now())報錯:ImportError: No module named ‘datetime.datetime’; ‘datetime’ is not a package
是不是datetime只能用from import而不能用import?
from import 和 import有什么區(qū)別?
問題解答
嗨嘍:小編是一名python開發(fā)工程師,這里有我自己整理了一套最新的python系統(tǒng)學習教程, 包括從基礎的python腳本到web開發(fā)、爬蟲、數(shù)據(jù)分析、數(shù)據(jù)可視化、機器學習等。想要的加Q裙:895817687import Module # 引入模塊 from Module import Other # 引入模塊中的類、函數(shù)或者變量 from Module import * # 引入模塊中的所有‘公開’成員PS:當有一個包名為pname時,其內(nèi)部 .py 文件的模塊名就是 pname. 也就是說模塊名中包含了 Package包 這個概念。
其區(qū)別就是:
第一個:引入的模塊(假如是 mdemo )會自動生成一個‘對象‘以模塊名命名,然后就可以通過這個‘對象’(mdemo)獲取該模塊里面的類、函數(shù)或變量等…
第二個:引入模塊中的Other(這里的Other就是模塊中定義的成員)成員,調(diào)用時就可以省略 模塊名。
第三個:這種情況如果上面的第二個弄懂的話就不難理解了,其意思就是引入模塊中所有’公開’的成員。
鑒于上面的問題可以快速套用上面的分析
from datetime import datetime#引入 datetime 模塊中的 datetime 類,然后就可以通過datetime這個類調(diào)用now() 方法了
#即,內(nèi)部可以通過datetime.now()來調(diào)用
import datetime#引入datetime 模塊,然后通過這個模塊來調(diào)用模塊中的類datetime和類datetime中的方法now()
#即:內(nèi)部可以通過datetime.datetime.now()來調(diào)用
也就是說,有一個模塊datetime,這個模塊中有一個類datetime,在這個類中有一個方法now()
我們可以驗證上面這句話是否正確:
我們可以通過查看python默認查找模塊位置,一個個打開看下是否有datetime這個模塊
總結(jié)
以上是生活随笔為你收集整理的Python中from import和import的区别?没有比这更好的回答了的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 听说92.8%的人答不对这道Python
- 下一篇: 数据分析和作图用python好还是R!p