欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python中._pth文件的作用及說明

 更新時(shí)間:2024年02月26日 16:05:18   作者:順其自然~  
這篇文章主要介紹了Python中._pth文件的作用及說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Python在遍歷已知的庫文件目錄過程中,如果見到一個(gè)._pth 文件,就會(huì)將文件中所記錄的路徑加入到 sys.path 設(shè)置中,于是 .pth 文件說指明的庫也就可以被 Python 運(yùn)行環(huán)境找到了。

python中有一個(gè).pth文件,該文件的用法是:

首先xxx._pth文件里面會(huì)書寫一些路徑,一行一個(gè)。

將xxx._pth文件放在特定位置,則可以讓python在加載模塊時(shí),讀取xxx._pth中指定的路徑。

在python中,一個(gè)擴(kuò)展名.py的文件就是一個(gè)模塊

1. 使用import語句導(dǎo)入模塊

import modulename 導(dǎo)入文件名為modulename.py的所有模塊

import modulename [as alias] 設(shè)置別名

備注:

使用import導(dǎo)入模塊后,每執(zhí)行一條import語句會(huì)創(chuàng)建一個(gè)新的命名空間,在該命名空間中執(zhí)行與.py文件相關(guān)的所有語句。

在執(zhí)行時(shí),需要在具體的變量、函數(shù)和類名前加上”模塊名.”。

2. 使用from....import語句導(dǎo)入模塊

  • from modelname import member: 導(dǎo)入某個(gè)變量、函數(shù)或者類等。
  • from modelname import *:導(dǎo)入全部定義

3. 模塊搜索順序

當(dāng)import 導(dǎo)入模塊之后,會(huì)按照以下順序進(jìn)行查找:

  • 1)當(dāng)前目錄下查找
  • 2)在PYTHONPATH下的每個(gè)目錄中查找
  • 3)到python默認(rèn)安裝目錄下查找

上面的目錄可以通過sys的sys.path查看

import sysprint(sys.path)

輸出結(jié)果:

['E:PyProjectChapter13', 'E:PyProject', 'D:python3python38.zip', 'D:python3DLLs', 'D:python3lib', 'D:python3', 'E:PyProjectvenv', 'E:PyProjectvenvlibsite-packages', 'E:PyProjectvenvlibsite-packagessetuptools-40.8.0-py3.8.egg', 'E:PyProjectvenvlibsite-packagespip-19.0.3-py3.8.egg']

可通過以下3種方式將指定的目錄加到path中

  • a. 臨時(shí)加入
import syssys.path.append('E:/')print(sys.path)

輸出結(jié)果

['E:PyProjectChapter13', 'E:PyProject', 'D:python3python38.zip', 'D:python3DLLs', 'D:python3lib', 'D:python3', 'E:PyProjectvenv', 'E:PyProjectvenvlibsite-packages', 'E:PyProjectvenvlibsite-packagessetuptools-40.8.0-py3.8.egg', 'E:PyProjectvenvlibsite-packagespip-19.0.3-py3.8.egg', 'E:/']

備注:只在當(dāng)前文件的窗口中有效,窗口關(guān)閉后即失效。

  • b. 增加.pth文件

在python安裝目錄下的Libsite-packages中(我的在D:\python3\Libsite-packages),創(chuàng)建擴(kuò)展名為.pth的文件,文件名自定,在該文件中添加要導(dǎo)入的目錄

備注:

此種方法,需要重新打開要執(zhí)行的導(dǎo)入模塊的python文件,否則不生效。

只在當(dāng)前版本中有效。

  • c. 在PYTHONPATH環(huán)境變量中添加

打開windows的“環(huán)境變量”對(duì)話框,若沒有PYTHONPATH則需要添加,否則雙擊PYTHONPATH變量,在彈出對(duì)話框的變量值文本中添加新的模塊目錄,目錄之前使用逗號(hào)分隔。

.

備注:

此種方法,需要重新打開要執(zhí)行的導(dǎo)入模塊的python文件,否則不生效。

只在當(dāng)前版本中有效。

4. 以主程序的形式執(zhí)行

christmastree.py文件內(nèi)容為:

pinetree = '我是一顆松樹'
def fun_christmastree(): ''' 功能:一個(gè)夢 無返回值 ''' 
    pinetree = '掛上彩燈、禮物.....我變成一顆圣誕樹'
    print(pinetree)

.

main.py文件內(nèi)容為:

import christmastreeprint('全局變量的值為: ', christmastree.pinetree)

第一次使用灰色框中的內(nèi)容:

輸出結(jié)果為:

下雪了.....=================開始做夢......==============掛上彩燈、禮物.....我變成一顆圣誕樹=================夢醒了......==============我身上落滿雪花. 我是一顆松樹-_-

第二次使用紅色框中的代碼:

輸出結(jié)果:

全局變量的值為: 我是一顆松樹

說明:

通俗的理解__name__ == '__main__':

假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明');

在你自己眼中,你是你自己(__name__ == '__main__')。

python為動(dòng)態(tài)解釋型語言,也就是從腳本第一行開始運(yùn)行,沒有統(tǒng)一的入口。

每一個(gè)模塊(.py)都有一個(gè)__name__,當(dāng)模塊被直接執(zhí)行時(shí),此時(shí)__name__ '__main__';而被其他模塊導(dǎo)入時(shí),此時(shí)__name__為被導(dǎo)入的模塊名稱,程序執(zhí)行被導(dǎo)入模塊的所有代碼。

但更多時(shí)候只是希望執(zhí)行部分代碼,此時(shí)如紅框處表示,可以加上if __name__ == '__main__',作為文件的入口。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論