Python从其他文件中导入变量[英] Python importing variables from other file

问题描述

我在同一目录中有3个文件:test1.py,test2.py和 init .py.

在test1.py中我有此代码:

def test_function():
    a = "aaa"

test2.py我有此代码:

from test1 import *


def test_function2():
    print(a)


test_function2()

i可以将" test_function"(并调用函数)导入到test2.py中,但我不能在test2.py中使用变量" a".

错误:未解决的引用" A".

我想知道是否可以使用" a" test2.py.

推荐答案

在test1.py中,您可以具有返回变量a

的值的函数
def get_a():
    return a

当您在test2.py中时,您可以致电get_a().

因此,在test22中.

from test1 import *

a = get_a()

def test_function2():
    print(a)


test_function2()

其他推荐答案

python中本地变量和全局变量的规则是什么?¶

在python中,仅在函数中引用的变量隐含全局. 如果将变量分配给该函数正文内的任何地方的值

因此,使变量a全局和test1模块中的call test_function()使其在加载模块时将a当作全局变量

test1.py

def test_function():
  global a
  a = "aaa"

test_function() 

test2.py

from test1 import *

def test_function2():
  print(a)


test_function2()

其他推荐答案

test1.py

def test_function():
    a = "aaa"
    return a

test2.py

import test1


def test_function2():
    print(test1.test_function())


test_function2()

本文地址:https://www.itbaoku.cn/post/2078736.html