在python的多个文件中使用变量(如extern),而不分配变量,而使用输入变量(不使用文件)

时间:2018-07-20 08:57:20

标签: python python-2.7

文件1( a1.py ):

a=input("Input : ")

b=a

print("File1 end")

输出:

Input : 4
File1 end

文件2( a2.py ):

import a1
print("Output : "+a1.b)

输出:

Input : 2
File1 end
Output : 2

预期输出(运行a2.py 后):

Output : 4

2 个答案:

答案 0 :(得分:0)

该变量的用法与应有的一样,并且您观察到的输出是正确的:

a=input("Input : ") # a = 2
b=a # b = 2, a = 2

import a1
print("Output : "+a1.b) # a1.b = 2, since b = 2

如果在输入2时希望输出为4,则有几种可能性,例如将分配更改为b=2*a

答案 1 :(得分:0)

您所期望的无法在python中完成。 在运行 a2.py 时,它将编译 a1.py 并将输入存储在内存中,并且一旦脚本结束,便会释放内存。因此,除非使用文件,否则不能指望python在脚本结束后存储变量。