久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Python 跨.py文件調(diào)用自定義函數(shù)說明

瀏覽:4日期:2022-07-23 16:33:35

0 前言

os.chdir() :用于改變當前python工作的目錄到指定的路徑

sys.path:是python搜索模塊的一個路徑集,為list,自定義的包可以把存放路徑加進去,之后直接調(diào)用包名就行了。

1 同一文件夾

一般當前的工作路徑是在搜索路徑里面,所以不用sys.path.append,如果調(diào)用包的時候報錯,先使用sys.path查看當前路徑在不在list里,不在list里加進去才能直接調(diào)用自定義包。

一個文件夾內(nèi)有兩個 .py 文件:

exe101.pyFileWriteAbout.py

我們想在exe101.py文件內(nèi)調(diào)用FileWriteAbout.py文件中的 任意 一個自定義函數(shù)。

Python 跨.py文件調(diào)用自定義函數(shù)說明

假如調(diào)用FileWriteAbout.py文件中的函數(shù)writeList():

Python 跨.py文件調(diào)用自定義函數(shù)說明

直接在exe101.py中輸入:

import FileWriteAbout # 導入另一個文件FileWriteAbout.writeList() #調(diào)用其中的函數(shù)名#或者下面這種,只是調(diào)用時省略py文件名容易導致不同包內(nèi)的函數(shù)名字沖突from FileWriteAbout import *writeList() #直接寫函數(shù)名

ps:

如果只涉及被調(diào)用py文件中的一個具體函數(shù)

就可以將調(diào)入形式寫成:

from FileWriteAbout import writeListwriteList()

2 不同文件夾下

兩個py文件不再一個目錄的情況下

2.1 用append將待調(diào)用文件路徑加入搜索list

import syssys.path.append(r'D:MathElectricpythonexercises') # 待引用的py文件路徑加到了搜索列表里import FileWriteAbout # py 文件名FileWriteAbout.writeList() # 具體函數(shù)

2.2 使用imp包

導入imp包:

import imp

AA = imp.load_source(name,pathname[,file])

將源py文件pathname導入到名字為name的模塊中,name可以是自己定義。

例如:

import imp # 導入CC = imp.load_source(’MM’,r’D:MathElectricpythonexercisesFileWriteAbout.py’)

使用時:

方法(1):直接使用

CC.writeList()

方法(2):導入別名使用

import MMMM.writeList()

3 spyder使用相對路徑讀取文件

絕對路徑讀取文件沒有問題。

data = pd.read_excel(r'D:/project/UCIpowerPre/CCPP/Folds5x2_pp.xlsx')

使用spyder寫代碼的時候想使用相對路徑直接讀數(shù)據(jù),

data = pd.read_excel(r'CCPP/Folds5x2_pp.xlsx')

發(fā)現(xiàn)報錯。

其實就是代碼編輯的工作路徑和數(shù)據(jù)路徑不對應。

我們可以把工作路徑切換到待讀取文件所在的位置。

或者在spyder右上角把當前的工作路徑改一下。

import os os.chdir(r'D:/project/UCIpowerPre')

重點區(qū)分這幾個路徑的區(qū)別:

當前的工作路徑

py文件包的搜索路徑

數(shù)據(jù)文件所在路徑

補充知識:python只引入模塊并不能直接調(diào)用該模塊的函數(shù)

如下圖:

Python 跨.py文件調(diào)用自定義函數(shù)說明

這里只引入了recognizer模塊,沒有直接引入其函數(shù),會報錯name ’XXX’ is not defined

若想頻繁使用某個函數(shù),可以將它賦值給一個本地變量

如:

predict = recognizer.predictclean_captcha = recognizer.clean_captchaget_captcha = recognizer.get_captcha

Python 跨.py文件調(diào)用自定義函數(shù)說明

以上這篇Python 跨.py文件調(diào)用自定義函數(shù)說明就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 永福县| 建湖县| 宣化县| 岳阳县| 三门县| 株洲县| 个旧市| 洪湖市| 平塘县| 修文县| 莱州市| 博兴县| 吉水县| 阳春市| 扶绥县| 仁化县| 边坝县| 南丰县| 安福县| 平顶山市| 建始县| 四子王旗| 称多县| 广水市| 全州县| 色达县| 和龙市| 海原县| 和硕县| 郑州市| 霍林郭勒市| 休宁县| 织金县| 皮山县| 盐源县| 枞阳县| 黔南| 田阳县| 扶绥县| 三门县| 日土县|