溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

自定義模塊導(dǎo)入的實(shí)用方法

發(fā)布時(shí)間:2020-07-29 13:23:06 來(lái)源:網(wǎng)絡(luò) 閱讀:1010 作者:even_07 欄目:編程語(yǔ)言

00一個(gè)大坑
這個(gè)問(wèn)題是我在使用pycharm中的copy path獲取當(dāng)前文件的絕對(duì)路徑時(shí)遇到。

自定義模塊導(dǎo)入的實(shí)用方法

結(jié)果獲取到的路徑如下?。?!
E:\text1\day24(模塊)\模塊導(dǎo)入練習(xí)1\當(dāng)前要執(zhí)行的文件.py
一開(kāi)始沒(méi)有發(fā)現(xiàn)錯(cuò)在哪里,直到使用
print(__file__)

發(fā)現(xiàn)真正的路徑是:
E:/text1/day24(模塊)/模塊導(dǎo)入練習(xí)1/當(dāng)前要執(zhí)行的文件.py
’\‘ 和 ’/‘ 的差距

01 自定義的模塊導(dǎo)入一
自定義模塊導(dǎo)入的實(shí)用方法

# import 模塊
# 模塊.func()

# from 模塊 import func1
# func1()

# from 包 import 模塊2
# 模塊2.func2()

path='E:/text1/day24(模塊)/模塊導(dǎo)入練習(xí)1/包'   #  E:/text1/day24(模塊)/模塊導(dǎo)入練習(xí)1/包/模塊2.py
                                                   #  E:\text1\day24(模塊)\模塊導(dǎo)入練習(xí)1\包\模塊2.py
                                                   # E:\text1\day24(模塊)\模塊導(dǎo)入練習(xí)1\包
import sys
sys.path.append(path)
print(sys.path)

import 模塊2
模塊2.func2()
print(__file__)

02 自定義的模塊導(dǎo)入二
自定義模塊導(dǎo)入的實(shí)用方法

# import sys
# sys.path.append('E:/text1/day24(模塊)/模塊導(dǎo)入練習(xí)2/core')

# import main
# main.func3()
                     #   E:/text1/day24(模塊)/模塊導(dǎo)入練習(xí)2/core
# print(__file__)      #    E:/text1/day24(模塊)/模塊導(dǎo)入練習(xí)2/bin/start.py
# rep=__file__.split('/')
# print(rep)
#
# print(rep[:-2])
# base_path='/'.join(rep[:-2])
# print(base_path)       # E:/text1/day24(模塊)/模塊導(dǎo)入練習(xí)2
#
# import sys
# sys.path.append(base_path)
# from core import main
#
# main.func3()

# 簡(jiǎn)化

rep=__file__.split('/')
base_path='/'.join(rep[:-2])
import sys
sys.path.append(base_path)

from core import main

main.func3()
向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI