链接Python文件帮助

时间:2013-01-13 09:18:21

标签: python

我理解如何实际链接python文件,但是,我不明白如何从这些链接文件中获取变量。我试图抓住它们并继续获取NameError。

我该怎么做呢?我想链接文件的原因是简单地连接我的脚本而不是10000000000行。另外,在导入的python脚本中,我是否必须再次导入所有内容?另一个问题,我在使用其他脚本函数时是否使用自我函数?

即;

主脚本:

import sys, os
import importedpyfile

导入的Py文件​​

import sys, os

3 个答案:

答案 0 :(得分:3)

  

我理解如何实际链接python文件,但是,我没有   了解如何从这些链接文件中获取变量。我试过了   抓住它们,我一直得到NameError。

你是怎么做到的?发布更多代码。例如,以下工作:

file1.py

#!/usr/bin/env python

from file2 import file2_func, file2_variable

file2_func()
print file2_variable

file2.py:

#!/usr/bin/env python

file2_variable = "I'm a variable!"

def file2_func():
    print "Hello World!"
  

此外,在导入的python脚本中,我是否必须导入所有内容   再次?

没有,当python解释器读取该文件时,应该导入模块。

  

另一个问题,我在使用另一个时使用自我功能   脚本功能?

不,通常是访问班级成员。请参阅python self explained

导入文件的方法也不止一种。有关解释,请参阅其他答案。

答案 1 :(得分:0)

在C / C ++将库链接到可执行文件的意义上,Python模块没有“链接”。 Python import 操作会创建一个引用导入模块的名称;没有这个名称就没有(直接)方式来访问另一个模块。

答案 2 :(得分:0)

我认为您要问的是如何从.py文件访问全局变量而无需处理命名空间。

在您的主脚本中,将呼叫替换为import importedpyfile来代替

from importedpyfile import *

理想情况下,您可以按照自己的方式保存代码。但是,只需使用importedpyfile命名空间引用那些全局变量。

e.g。

import importedpyfile
importedpyfile.MyFunction()  # calls "MyFunction" that is defined in importedpyfile.py