python3模塊初步

模塊

  • 實質就是py文件。查看本地系統自帶的模塊
Snip20170810_1.png
  • 如果想安裝其他模塊,可以通過
sudo pip install pygame

如果是python3

sudo pip3 install pygame

如果ubuntu系統提示找不到pip命令可以通過源添加

 sudo apt-get install python3-pip
  • 自己寫一個模塊,也就是寫一個py文件

文件名:sendmsg.py

def test1():
    print ("----test1---")

def test2():
    print ("-----test2----")

if __name__ == '__main__':
    test1()
    test2()

文件名:receivemsg.py

def test1():
    print ("reveive----test1---")

def test2():
    print ("reveive-----test2----")
test1()
test2()

我們正常寫代碼需要測試的,比如單元測試,在公司提交代碼之前也要現自己測試。畢竟不想做no1.
匯總后寫一個main.py測試所有不同模塊的代碼。
文件名:main.py

import sendmsg as s
import revmsg as r
s.test1()
s.test2()
r.test1()

此處就看到了非常常見的import關鍵字,由此就證明,模塊其實就是個py文件。畢竟我只寫一個兩個py文件,正好就可以導入了。運行main.py會發現如下運行結果


Snip20170810_2.png

發現main.py中只進行了三次函數調用,結果確顯示5個調用。
原來,每個模塊被導入的時候,默認情況都會執行一遍所有的函數。注意,這里的sendmsg.py文件末尾有一處不同于receive.py文件。因此結果中只出現reveive打印兩次,sendmsg并沒有打印。


if __name__ == '__main__':
    test1()
    test2()

到底是什么意思?
如果是本身打印name,結果是main

Snip20170810_3.png

如果通過別人導入后打印,name,結果是它自身的文件名字
Snip20170810_5.png

因此

if __name__ == '__main__':
    test1()
    test2()

上述代碼的意思就是,如果本身文件執行的,就允許執行下面的代碼,一般是測試。如果是別人調用,就不給予執行

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,915評論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,242評論 25 708
  • ¥開啟¥ 【iAPP實現進入界面執行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個線程,因...
    小菜c閱讀 6,511評論 0 17
  • 相比大海的磅礴包容,海邊沙灘的廣闊無垠,也許家鄉的小河灘更是一種羞澀的清秀。我常常想生活在海邊的人是幸運的,大...
    荷香滴露閱讀 484評論 0 1
  • 接上. 而且是在自家公司里面,而且是樓上部門的同事,這尼瑪不行動,就說不過去了. 然而當時卻是這樣的,同部門的同事...
    文盲閱讀 131評論 0 1