繁体   English   中英

将函数内部的变量传递给另一个Python文件

[英]Passing a variable inside of a function to another Python file

我有两个python文件,分别是classification_model.pyresult.py classification_model.py文件中有一个函数

def learningbased():
    ann_accuracy = (metrics.accuracy_score(expected, predicted))

我想把这个ann_accuracy变量放到result.py文件中。我用过

from classification_model import *
from classification_model import learningbased

但它不起作用。 谁能告诉我怎么能这样做呢。

好方法:你可以在函数中返回ann_accuracy的值,并调用result.py中的函数来获取值。

#classification_model.py:
def learningbased():
    ann_accuracy = (metrics.accuracy_score(expected, predicted))
    return ann_accuracy

#result.py
from classification_model import *
ann_accuracy = learningbased()

替代方式(在绝望时使用,没有其他解决方案):将ann_accuracy声明为classification_model.py中的全局变量。 这样当你from classification_model import *调用函数时,你将获得result.py中的全局变量

我认为您应该通过添加__init__.py文件将项目声明为包:

project_folder
    |_ __init__.py
    |_ classification_model.py
    |_ result.py

完成后,在result.py你可以这样做:

from . import classification_model
classification_model.learning_based()

它与已经建议的内容略有不同,它使您能够清楚地组织项目。

将ann_accuracy声明为classification_model.py中的全局变量。 使用from classification_model import * ,您可以在result.py中使用/访问全局变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM