在python中调用另外的文件

关于如何在python中调用其他的文件

在cpp里面是使用头文件来导入的,但是提到python突然没想起来是怎么导入的。
假设有文件a.py和b.py

在同一目录下

1
2
import a
a.func()

或者引用模块中的函数

1
2
3
from a import func
func()
`

注意:前面一种方法导入的时候需要加上模块的名称限定,但是后面的导入就不用。如果怕麻烦可以导入的时候使用

1
from a import *

在不同目录下

sys.path获取指定模块搜索路径的字符串集合,可以将写好的模块放在得到的某个路径下,就可以在程序中import时正确找到

1
2
3
4
import sys
sys.path.append('a所在的路径')
import a
a.func()

sys是什么

  • sys是python程序用来请求解释器行为的interface,比如调试,实时运行环境等

sys.argv

  • 从外部向程序内部传递参数
    1
    2
    3
    4
    5
    #!/usr/bin/env python

    import sys
    print sys.argv[0]
    print sys.argv[1]

运行:

1
2
3
# python sys.py argv1
sys.py
argv1

sys.exit()

  • 需要中途退出的时候可以调用,可以返回参数(0是正常退出,其他是异常)
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    #!/usr/bin/env python

    import sys

    def exitfunc(value):
    print value
    sys.exit(0)

    print "hello"

    try:
    sys.exit(1)
    except SystemExit,value:
    exitfunc(value)

    print "come?"
1
2
3
# python exit.py
hello
1