将python变量传递给另一个脚本

时间:2015-04-28 17:11:21

标签: python variables

我对使用python编程很新。所以提前道歉: 我有两个python脚本,应该共享变量。此外,第一个脚本(first.py)应该调用第二个脚本(second.py)

first.py:

import commands
x=5
print x
cmd = "path-to-second/second.py"
ou = commands.getoutput(cmd)
print x

second.py看起来像这样

print x
x=10
print x

我希望输出: 五 五 10 10

原则上我需要一种在两个脚本之间进行通信的方法。任何完成这项工作的解决方案都非常好。

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

每个python脚本都有自己的根范围,在这种情况下,您将启动另一个完全独立的进程,因此其x与其他脚本完全不同x否则每个python脚本都必须有唯一的变量名以避免冲突。

您可能想要做的是在命令行上提供second.py所需的值。这是一个简单的方法:

first.py:

import commands
x=5
print x
cmd = "path-to-second/second.py " + str(x)
ou = commands.getoutput(cmd)

second.py:

import sys
x = int(sys.argv[1]) # sys.argv[0] is "second.py"
print x
x=10
print x

答案 1 :(得分:1)

在你的second.py中,你会想要这些行

from sys import argv
x = argv[1]   #Second argument (starts at 0, which is the script name)

然后你的first.py应该执行second.py,例如

import os
os.system("python second.py " + x)