2012-01-27 55 views
12

我是新来的蟒蛇,我想单独我的功能集成到不同的文件,比如我用C做++(驱动程序文件,并针对不同类型的功能,我结束了在编译时一起链接文件)。如何链接多个Python脚本

假设我想创建一个简单的“驱动器”文件,启动主程序和“功能”文件,其中包括简单的功能,这是由“功能”文件中的驱动程序和其他函数调用。

我应该怎么做呢?由于python没有编译,我如何将文件链接在一起?

回答

29

你可以import模块。只需创建不同的python文件并在脚本开始时导入它们。

比如我得到这个function.py文件:

def func(a, b): 
    return a+b 

main.py文件:

import function 

if __name__ == "__main__": 
    ans = function.func(2, 3) 
    print ans 

,就是这样!这是导入模块的官方tutorial

+0

对我来说,当我进行打印ANS,它打印无。我不知道为什么:(谁能帮助我? – ePascoal 2014-09-23 17:19:55

+0

@ePascoal你确定你是在FUNC“回归” A + B? – mitch 2014-09-25 14:15:21

+0

太神奇了!以前,我看见,我总是用插座! – Luke 2016-11-29 07:48:03

1

你应该看看进入官方tutorial,并且this方便的页面,这将帮助您快速启动:)

1

在driver.py的开头,写:

import functions 

这使您可以访问在functions.py定义属性,引用就像这样:

functions.foo 
functions.bar(args) 
... 
+0

这可能是一个愚蠢的问题,但也可用的变量? – beckah 2015-04-24 15:09:44

1

你可以输入任何的Python文件只需键入:

import filename 

但是在这种情况下,您必须在每次要使用时输入文件名。例如,您必须使用filename.foo才能在该文件中使用特定功能foo。但是,你也可以做到以下几点:

from function import * 

在这种情况下,所有你需要做的就是直接输入你的命令,不filename

一个明显的例子:

如果您正在使用Python乌龟用import turtle那么每个你必须键入turtle.foo时间工作。例如:turtle.forward(90)turtle.left(90)turtle.up()

但是如果你使用from turtle import *那么你可以做同样的命令,而无需turtle。例如:forward(90),left(90),up()