将变量从第二个脚本返回到第一个脚本(Python)

时间:2018-02-16 05:27:52

标签: python

我从script1调用script2,并希望使用脚本1中script2确定的变量。

SCRIPT1

a = 1
import script2
script2.dosomething(a)
print b

SCRIPT2

def dosomething(a):
    b = a+2
脚本1中无法识别

B。有什么方法吗?

3 个答案:

答案 0 :(得分:3)

脚本1中的

a = 1
import script2
b = script2.dosomething(a)
print(b)
脚本2中的

def dosomething(a):
    return a+2

我认为错误是dosomething没有返回任何内容,函数中的变量b是局部变量。

答案 1 :(得分:1)

您正在寻找的是"返回"声明。您可以告诉函数将变量发送回调用该函数的另一段代码。

以下是了解功能及其返回方式的良好资源:https://www.pitt.edu/~naraehan/python2/user_defined_functions.html

实际上,您的代码最终会与此类似:

script2.py

def dosomething(a):
    return a + 2

script1.py

import script2.py
a = 1
result = script2.dosomething(a)
print result

答案 2 :(得分:0)

调用脚本时,调用脚本应该访问被调用脚本的命名空间。 (在你的情况下,首先可以访问第二个命名空间。)但是,你要求的是另一种方式。您的变量在调用脚本中定义,您希望被调用的脚本访问调用者的命名空间。 点击这里: Stackoverflow answer