在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

解析python模塊搜索路徑和別名as

jf_78858299 ? 來源:梯閱線條 ? 作者:小梯子 ? 2023-02-21 10:53 ? 次閱讀

1.1 python模塊搜索路徑

1.1.1 sys.path

描述

python通過模塊搜索路徑找到模塊文件進行導入。

順序 路徑
1 程序主目錄
2 PYTHONPATH目錄(若有),用于路徑拓展
3 標準庫目錄
4 .pth文件(若有),用于路徑拓展

程序啟動時,按上面順序將這4個路徑存放sys.path列表,導入并搜索模塊時,根據從左至右的順序搜索sys.path。

NO 類型 描述
1 sys.path列表 程序運行時可以動態更新sys.path進行修改模塊搜索路徑。 程序結束后,更新的sys.path會失效。
2 PYTHONPATH和.pth 通過PYTHONPATH和.pth定制模塊搜索路徑。 程序結束后,仍然存在本地配置。

文件內容

E:\\documents\\F盤\\testsyspath.py

# 打開cmd 執行下面示例
import sys,os

def testpath():
   print("run:{}".format(os.path.abspath(__file__)))
   print("__name__:{}".format(__name__))
   curpath="解釋器交互模式執行" if sys.path[0]=='' else "頂層文件模式執行"
   print("{}的sys.path為:{}".format(curpath,sys.path))
   sys.path.append("E:\\\\mysitepack")
   print("添加路徑后{}的sys.path為:{}".format(curpath,sys.path))
if __name__ == '__main__':
   testpath()

示例

# 打開cmd 執行下面示例
E:\\documents\\F盤>python
>>> import testsyspath
>>> testsyspath.testpath()
run:E:\\documents\\F盤\\testsyspath.py
__name__:testsyspath
# 交互模式下,程序目錄為空,即解釋器當前路徑
解釋器交互模式執行的sys.path為:['', 'D:\\\\python3\\\\python37.zip', 'D:\\\\python3\\\\DLLs', 'D:\\\\python3\\\\lib', 'D:\\\\python3', 'D:\\\\python3\\\\lib\\\\site-packages']
# sys.path.append 動態添加搜索路徑
添加路徑后解釋器交互模式執行的sys.path為:['', 'D:\\\\python3\\\\python37.zip', 'D:\\\\python3\\\\DLLs', 'D:\\\\python3\\\\lib', 'D:\\\\python3', 'D:\\\\python3\\\\lib\\\\site-packages', 'E:\\\\mysitepack']
>>> exit()
# 文件模式下,程序目錄為py執行路徑
E:\\documents\\F盤>python testsyspath.py
run:E:\\documents\\F盤\\testsyspath.py
__name__:__main__
頂層文件模式執行的sys.path為:['E:\\\\documents\\\\F盤', 'D:\\\\python3\\\\python37.zip', 'D:\\\\python3\\\\DLLs', 'D:\\\\python3\\\\lib', 'D:\\\\python3', 'D:\\\\python3\\\\lib\\\\site-packages']
添加路徑后頂層文件模式執行的sys.path為:['E:\\\\documents\\\\F盤', 'D:\\\\python3\\\\python37.zip', 'D:\\\\python3\\\\DLLs', 'D:\\\\python3\\\\lib', 'D:\\\\python3', 'D:\\\\python3\\\\lib\\\\site-packages', 'E:\\\\mysitepack']

1.2 python包模塊別名

python通過as關鍵字給模塊或模塊屬性取別名,達到簡寫和避免名字沖突的效果。

1.2.1 as別名

用法

import module1 [as identifier1] (, module2 [as identifier2])
from module import var1 ([as iden1](,var2 [as iden2]))
import dir1.dir2.mod as identifier1
from dir1.dir2 import mod as identifier1
from dir1.dir2.mod import x as identifier1

描述

as identifier1:

NO 描述
1 通過as給模塊或屬性取別名,之后通過別名訪問模塊對象屬性。
2 用as后,不可通過 “原模塊原名”訪問模塊屬性,不可訪問“原屬性名”。
3 用as后,模塊搜索路徑存放的鍵為模塊原名,而非別名。
4 用as后,通過字符串方式訪問的用“原名”,通過變量名方式訪問的用“別名”。

文件內容

E:\\documents\\F盤\\testas.py

import os

tyxt='梯閱線條'

def testas():
   print("run:{}".format(os.path.abspath(__file__)))
   print("__name__:{}".format(__name__))

示例

# 打開cmd 執行下面示例
E:\\documents\\F盤>python
# as 模塊取別名
>>> import testas as tas
# 模塊別名訪問屬性
>>> tas.tyxt
'梯閱線條'
>>> tas.testas()
run:E:\\documents\\F盤\\testas.py
__name__:testas
# 原模塊名可訪問
>>> testas.tyxt
Traceback (most recent call last):
 File "", line 1, in 
NameError: name 'testas' is not defined
# as 屬性取別名
>>> from testas import testas as ts
# 屬性別名可訪問
>>> ts()
run:E:\\documents\\F盤\\testas.py
__name__:testas
# 原屬性名不可訪問
>>> testas()
Traceback (most recent call last):
 File "", line 1, in 
NameError: name 'testas' is not defined
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 模塊
    +關注

    關注

    7

    文章

    2768

    瀏覽量

    48816
  • AS
    AS
    +關注

    關注

    0

    文章

    27

    瀏覽量

    26215
  • python
    +關注

    關注

    56

    文章

    4821

    瀏覽量

    85738
收藏 人收藏

    評論

    相關推薦

    Linux設置永久別名alias的方法

    編輯 .bashrc文件,該文件主要用于保存一些個性化的設置,如命令別名路徑等。
    發表于 10-25 15:53 ?715次閱讀
    Linux設置永久<b class='flag-5'>別名</b>alias的方法

    Python模塊搜索路徑

    編程語言python
    小凡
    發布于 :2022年09月09日 11:31:03

    python模塊安裝方法

    Python模塊呢?import語句自定義模塊可以采用import語句來進行引入,其操作步驟是先導入模塊,再調用模塊中包含的函數,可將自定義
    發表于 04-04 14:57

    python編寫一個高效搜索代碼工具

    python編寫一個高效搜索代碼工具大多碼農在linux環境下使用grep+關鍵詞的命令搜索自己想要的代碼或者log文件。今天介紹用python如何編寫一個更強大的
    發表于 01-16 15:24

    Python的自動搜索路徑使用方法

    Python模塊搜索路徑
    發表于 07-31 14:26

    有關Python解析

    搜了很多歷年藍橋杯真題解答,大多都是Java,C++,C這些語言編寫的代碼解析Python解析的幾乎,甚至可以說沒有。而當下Python又這么火熱,藍橋杯也出了
    發表于 07-29 08:39

    基于Dijkstra的PKI交叉認證路徑搜索算法

    針對網狀型公鑰基礎設施(PKI)信任模型認證路徑的不確定性,提出一種基于Dijkstra 算法的PKI 交叉認證路徑搜索算法。該算法根據PKI 系統中配置的認證路徑
    發表于 03-20 15:59 ?20次下載

    Python中BeatifulSoap解析HTML的三個實用小技巧詳解

    BeautifulSoup是Python爬蟲應用解析Html的利器,是Python三方模塊bs4中提供的進行HTML解析的類,可以認為是一個
    的頭像 發表于 04-15 13:51 ?2208次閱讀

    基于改進遺傳算法的無人機搜索路徑規劃的研究

    無人機搜索路徑規劃就是為執行搜索任務的無人機規劃搜索路徑,以能夠盡早地發現被搜索的目標。無人機
    發表于 03-04 15:52 ?1200次閱讀

    圖染色局部搜索算法python

    一個簡單的局部搜索算法解決圖染色問題,python版本太少了,寫了一個
    發表于 01-03 14:31 ?1次下載

    python模塊相對導入from和import介紹1

    無包文件**init**.py下,python通過import module導入模塊時,先搜索程序運行主目錄。 程序運行主目錄為運行的py文件所在目錄,而不是執行python.e
    的頭像 發表于 02-21 14:15 ?1133次閱讀

    python模塊相對導入from和import介紹2

    python2.7先搜索當前包目錄,再搜索sys.path模塊搜索路徑。即先相對再絕對。
    的頭像 發表于 02-21 14:17 ?795次閱讀

    簡述python模塊import和from及all

    python指定導入目錄路徑,稱為包導入。 通過import和from導入包模塊。 通過**all**指定導入的模塊和導入的模塊
    的頭像 發表于 02-21 14:20 ?1377次閱讀

    TSMaster小功能—Python小程序如何導入外部庫

    今天給大家介紹TSMaster功能之Python小程序如何導入外部庫。通過在TSMaster默認的解析路徑下導入外部庫來介紹,以便我們去使用Python外部庫。TSMaster默認
    的頭像 發表于 08-14 10:06 ?1418次閱讀
    TSMaster小功能—<b class='flag-5'>Python</b>小程序如何導入外部庫

    查看python安裝路徑的方法

    Python是一種高級編程語言,常用于開發Web應用、數據分析、人工智能等領域。在使用Python進行開發之前,我們需要先安裝Python解釋器,并了解Python解釋器的安裝
    的頭像 發表于 11-29 14:54 ?1.2w次閱讀
    主站蜘蛛池模板: 精品成人在线 | 韩国三级在线不卡播放 | 国产白白白在线永久播放 | 久久青草国产手机看片福利盒子 | 西西午夜影院 | 奇米影视四色首页手机在线 | 欧美三级成人 | 成人a大片高清在线观看 | 黄色网免费观看 | 国产精品视频网站你懂得 | 国产精品1区2区3区在线播放 | 99久久精品费精品国产 | 免费看污视频软件 | 日本一视频一区视频二区 | 国产精品欧美一区二区三区不卡 | 操美女免费视频 | 免费性bbbb台湾 | 视频二区在线观看 | 黄色免费在线网址 | a理论片 | 香蕉色综合 | 99亚洲精品卡2卡三卡4卡2卡 | 日日夜夜爽 | 日日添天天做天天爱 | 99成人在线| 中文字幕一区二区三区视频在线 | 特级毛片aaa免费版 特级毛片a级毛免费播放 | 特黄特黄一级高清免费大片 | 最色网在线观看 | 免费激情网址 | 萝控喷水视频 | 男女免费观看视频 | 中文字幕天堂在线 | 88av免费观看| 日本黄网站高清色大全 | 久久99久久精品国产只有 | 久久国产乱子伦精品免费强 | 日韩免费视频一区二区 | 91免费网站在线看入口黄 | 中国特级毛片 | 欧美日韩不卡码一区二区三区 |