日韩精品欧美激情国产一区_中文无码精品一区二区三区在线_岛国毛片AV在线无码不卡_亞洲歐美日韓精品在線_使劲操好爽好粗视频在线播放_日韩一区欧美二区_八戒八戒网影院在线观看神马_亚洲怡红院在线色网_av无码不卡亚洲电影_国产麻豆媒体MDX

PyCharm中Directory與Python package的區(qū)別

時間:2021-12-12 15:43:13 類型:python
字號:    

  對于Python而言,有一點是要認(rèn)識明確的,python作為一個相對而言輕量級的,易用的腳本語言(當(dāng)然其功能并不僅限于此,在此只是討論該特點),隨著程序的增長,可能想要把它分成幾個文件,以便邏輯更加清晰,更好維護,亦或想要在幾個程序中均使用某個函數(shù),而不必將其復(fù)制粘貼到所有程序中。

  為了支持這一點,Python有一種方法將定義函數(shù)放在一個文件中,并在腳本中使用它們,這樣的文件叫做模塊,一個模塊中的定義可以被導(dǎo)入到其他模塊,或者主模塊中。

  簡單來說在python中模塊就是指一個py文件,如果我們將所有相關(guān)的代碼都放在一個py文件中,則該py文件既是程序由是模塊,但是程序和模塊的設(shè)計目的是不同的,程序的目的是為了運行,而模塊的目的是為了其他程序進(jìn)行引用

  Dictionary

  Dictionary在pycharm中就是一個文件夾,放置資源文件,對應(yīng)于在進(jìn)行JavaWeb開發(fā)時用于放置css/js文件的目錄,或者說在進(jìn)行物體識別時,用來存儲背景圖像的文件夾。該文件夾其中并不包含_ _ init.py_ _文件

  只要image目錄是我們程序目錄的子目錄,我們就可以導(dǎo)入image目錄下的任意模塊來為我們所用,使用時可如下:

  Python package

  對于Python package 文件夾而言,與Dictionary不同之處在于其會自動創(chuàng)建_ _ init.py_ _文件。

  簡單的說,python package就是一個目錄,其中包括一組模塊和一個_ _ init.py_ _文件。

  Image/

  _init _.py

  jpg.py

  tiff.py

  bmp.py

1.png

  _ _ init_ _.py

  該文件與Python的import機制有關(guān),這關(guān)乎到你的哪些.py文件是對外可訪問的。有些時候,如果一個包下有很多模塊,在調(diào)用方import如此多模塊是很費事,且不優(yōu)雅的,此時可以通過修改_ _ init_ _.py來完成該任務(wù)。

  在_ _ init_ .py中定義特殊變量_ all_ ,將要包含的模塊復(fù)制給該變量,例如在Image/ _ init_ .py中定義 all _=[‘tiff’,’bmp’,’jpg’],這里的all 對應(yīng)的就是 from …import * 中*代指的模塊,此時在引用方使用如下語句:

2.png

  其實_ _ init_ .py可以為空,當(dāng)其為空時,from Image import * 將Image包下所有的模塊都進(jìn)行引用,如果想要控制引用的模塊,則可以自行定義 all _


<